使用ZF2,当出现问题时,我会得到一个堆栈跟踪,但出于学习目的,我有时希望在事情正确时看到堆栈跟踪。我是否可以调用某些内容来填充页面上的堆栈跟踪,而不管错误是什么?
另外,有没有关于阅读\了解堆栈跟踪的好教程?对不起双重问题,但我认为我的第二个问题不应该发表自己的帖子。
答案 0 :(得分:2)
您可以生成使用debug_backtrace()
抛出异常时可用的类似信息。
在ZF2应用程序中,这可能会为您提供太多信息(并且它也是数组格式)。我写了一个非常简单的函数,我刚刚进入local.php
来帮助调试;它可能会有所帮助。
function debug_light_trace()
{
$backtrace = "Backtrace :-\n";
$debug_backtrace = debug_backtrace();
array_shift($debug_backtrace);
foreach ($debug_backtrace as $trace) {
$class = (isset($trace['class']))?$trace['class']:'';
$function = (isset($trace['function']))?$trace['function']:'';
$file = (isset($trace['file']))?$trace['file']:'';
$APP_ROOT = dirname(dirname(__DIR__));
$file = str_replace($APP_ROOT, '', $file);
$line = (isset($trace['line']))?$trace['line']:'';
$backtrace .= "{$file}({$line}) - {$class}::{$function}()\n";
}
return $backtrace;
}
关于更多信息,the documentation将是一个很好的起点(以及Google搜索)。我很快扫描了这个tuts plus guide;这也可能会给你更多背景知识。
答案 1 :(得分:0)
您也可以使用ZendDeveloperTools
这对开发者来说是一个很大的帮助。