打印PHP调用堆栈 [英] Print PHP Call Stack
本文介绍了打印PHP调用堆栈的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在寻找一种在PHP中打印调用堆栈的方法.
I'm looking for a way to print the call stack in PHP.
如果函数刷新IO缓冲区,则奖励点.
Bonus points if the function flushes the IO buffer.
推荐答案
如果要生成回溯,则需要查找 debug_print_backtrace
.
If you want to generate a backtrace, you are looking for debug_backtrace
and/or debug_print_backtrace
.
例如,第一个将为您提供一个像这样的数组(引用手册):
The first one will, for instance, get you an array like this one (quoting the manual) :
array(2) {
[0]=>
array(4) {
["file"] => string(10) "/tmp/a.php"
["line"] => int(10)
["function"] => string(6) "a_test"
["args"]=>
array(1) {
[0] => &string(6) "friend"
}
}
[1]=>
array(4) {
["file"] => string(10) "/tmp/b.php"
["line"] => int(2)
["args"] =>
array(1) {
[0] => string(10) "/tmp/a.php"
}
["function"] => string(12) "include_once"
}
}
它们显然不会刷新I/O缓冲区,但是您可以使用 flush
自己完成此操作. 和/或 ob_flush
.
They will apparently not flush the I/O buffer, but you can do that yourself, with flush
and/or ob_flush
.
(请参阅第一个手册页,以了解为什么使用和/或" ;-))
这篇关于打印PHP调用堆栈的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文