本文实例讲述了PHP堆栈调试操作。分享给大家供大家参考,具体如下:
你是否想知道当前函数被哪些文件调用了,如果知道了这些路径,我们就能很好的理解程序的执行过程,这是非常重要的,也是了解别人程序的基础,那么这里我就给大家介绍一种php中的堆栈调试的方法,其实就是php内置的一个函数debug_backtrace()
;
下面是就稍微介绍一下吧,具体还是要看手册哦,喜欢看手册的程序员才是前途无量的
$statcks = debug_backtrace(); $tmp_arr = array(); if(!$stacks) return $tmp_arr; foreach($stacks as $k=>$v) { $tmp[$k]['file'] = isset($v['file']) ? $v['file'] : '--'; $tmp[$k]['line'] = isset($v['line'])? $v['line'] : '--'; $tmp[$k]['function'] = isset($v['function']) ? $v['function'] : '--'; }
运行结果:
Array
(
[0] => Array
(
[file] => D:\wwwroot\CodeIgniter\application\controllers\finance\channel.php
[line] => 128
[function] => get_total_rows
)
[1] => Array
(
[file] => --
[line] => --
[function] => index
)
[2] => Array
(
[file] => D:\wwwroot\CodeIgniter\application\controllers\finance\channel.php
[line] => 46
[function] => call_user_func
)
[3] => Array
(
[file] => --
[line] => --
[function] => get_nav
)
[4] => Array
(
[file] => D:\wwwroot\CodeIgniter\system\core\CodeIgniter.php
[line] => 360
[function] => call_user_func_array
)
[5] => Array
(
[file] => D:\wwwroot\CodeIgniter\index.php
[line] => 205
[function] => require_once
)
)
这里是打印出来的数组,非常的好了
希望本文所述对大家PHP程序设计有所帮助。