PHP是我从echo或sprintf调用的函数
我想看看函数在哪里被调用 该函数是在echo还是sprintf中调用的?然后返回,否则回显内容 我得到了以下代码(test.php): (附:同一网页) 我的PHP版本是:PHP是我从echo或sprintf调用的函数,php,macos,printf,echo,debug-backtrace,Php,Macos,Printf,Echo,Debug Backtrace,我想看看函数在哪里被调用 该函数是在echo还是sprintf中调用的?然后返回,否则回显内容 我得到了以下代码(test.php): (附:同一网页) 我的PHP版本是: WDGMBP:BIHappyV3 Wes$ php -v PHP 5.5.27 (cli) (built: Aug 22 2015 18:20:44) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend
WDGMBP:BIHappyV3 Wes$ php -v
PHP 5.5.27 (cli) (built: Aug 22 2015 18:20:44)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
您对
debug\u backtrace
的工作原理感到困惑。它返回正在执行以进行调用的函数,而不是将随结果调用的函数。例如,如果您有:
function testit() {
someFunc(__('something'));
}
然后,$parent[1]['function']
将包含testit
,而不是someFunc
我认为没有任何方法可以获得someFunc
。该函数不在堆栈中的任何位置,因为它只有在返回后才会被调用
WDGMBP:BIHappyV3 Wes$ php -v
PHP 5.5.27 (cli) (built: Aug 22 2015 18:20:44)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
function testit() {
someFunc(__('something'));
}