我想用来register_tick_function()挂钩以下调用并使用debug_backtrace().
如果我运行以下代码。
<?php
function dump() {
// Replace this with var_dump(debug_backtrace()); to print the entire trace.
foreach (debug_backtrace() as $trace)
echo("Function ${trace['function']}() has been called" . PHP_EOL);
}
declare(ticks = 1);
register_tick_function('dump');
print("");
array_search('green', Array());
它只打印dump()函数。
Function dump() has been called
Function dump() has been called
Function dump() has been called
为什么我没有看到print()和array_search()跟踪数据?就像在调用之前已重置堆栈一样dump()。我也很确定它在过去可以正常工作。