возможно ли проверить, выполняется ли данная функция внутри другой функции или метода? - PullRequest
1 голос
/ 03 июля 2011
function echo_parent_func() {
    echo // so what now ?
}

function somefunc() {
    echo_parent_func();
}

somefunc(); //should echo string 'somefunc'

Это возможно даже с php?

1 Ответ

2 голосов
/ 03 июля 2011
function get_caller_method() 
{ 
    $traces = debug_backtrace(); 

    if (isset($traces[2])) 
    { 
        return $traces[2]['function']; 
    } 

    return null; 
} 

function echo_parent_func() {
    echo get_caller_method();
}

function somefunc() {
    echo_parent_func();
}

somefunc(); //should echo string 'somefunc'

Источник

РЕДАКТИРОВАТЬ Только что нашел этот ответ тоже:

...