我在php错误日志中收到以下错误消息:
PHP致命错误:第284行/lib/Zend/Db/Statement/Pdo.php中允许的内存大小为1073741824字节(试图分配5个字节)
但是,我想要完整的堆栈跟踪,任何想法如何获得它?
答案 0 :(得分:1)
看起来你的PHP配置(php.ini
)不允许超过1GB的内存,这对PHP脚本来说确实很大。
确保您的程序无限循环。当使用大型文件或大型数据库查询执行无限循环时,可能会发生内存在脚本停止工作之前已满max_execution_time
错误。
如果您的提供商允许,您可以延长内存使用量,如果需要,可以提供ini_set("memory_limit","2G")
或更多(不推荐)。
如果你真的想调试这个,请使用php" self-debuggers"在这种情况下,把
echo "<pre>".print_r(debug_backtrace(),true)."</pre>";
exit;
在错误发生之前,这将显示带有args,方法的完整堆栈树......
您还可以将debug_backtrace()
的输出存储在var中并自行处理。
答案 1 :(得分:0)
你可以看到带有堆栈跟踪的Xdebug。