Rumah  >  Artikel  >  php教程  >  php 调试利器debug_print_backtrace()

php 调试利器debug_print_backtrace()

WBOY
WBOYasal
2016-06-06 20:41:171424semak imbas

debug_print_backtrace() 是一个很低调的函数,很少有人注意过它.不过当我对着一个对象调用另一个对象再调用其它的对象和文件中的一个函数出错时,它正在一边笑呢

如果我们想知道某个方法被谁调用了? debug_print_backtrace可以解决
debug_print_backtrace() 可以打印出一个页面的调用过程 , 从哪儿来到哪儿去一目了然.
不过这是一个PHP5的专有函数,好在pear中已经有了实现,


测试代码
复制代码 代码如下:
class a{
function say($msg) {
echo "msg:".$msg;
echo "
";debug_print_backtrace(); <br>} <br>} <br><br>class b { <br>function say($msg) { <br>$a = new a(); <br>$a->say($msg); <br>} <br>} <br><br>class c { <br>function __construct($msg) { <br>$b = new b(); <br>$b->say($msg); <br>} <br>} <br><br>$c = new c("test"); <br> <br>输出结果 <br><span style="CURSOR: pointer" onclick="doCopy('code6618')"><u>复制代码</u></span> 代码如下: <br>msg:test <br>#0 a->say(test) called at [/var/www/test/test0723.php:12] <br>#1 b->say(test) called at [/var/www/test/test0723.php:19] <br>#2 c->__construct(test) called at [/var/www/test/test0723.php:23] <br> <br>相关链接 <br><br> <br>


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn