如何在PHP中跟踪段错误

时间:2014-05-23 20:03:12

标签: php segmentation-fault

我正在使用PHP开发一个小型的应用程序。在几天前的某个时候,当我尝试在应用程序中加载和处理一些数据时,PHP开始在我的开发机器(而不是prod服务器)上进行段错误。

我附加了gdb以试图查看段错误发生的位置,但基本上无处可去。回溯包含一堆call_func - 事物(约50),最后一个函数是mpm_prefork。我认为这是mpm_prefork的错,所以我安装了php-fpm并尝试使用mpm_event,但它仍然是段错误。

我注意到如果我从数据库中删除所有数据(我使用的是SQLite),它就不再是段错误了,所以我尝试将数据导出到MySQL数据库中,但仍然是段错误

总之,当数据加载并处理输出时,似乎会发生段错误。

我使用的是PHP 5.5.12和Apache 2.4.9,两者都是(我相信)最新版本。

我的问题是:当发生段错误时,我能否以某种方式获取PHP的堆栈?或者也许我可以在某个地方使用PHP记录每个函数调用来查看哪个函数调用导致崩溃?

此外,PHP是否有堆栈限制?我可能会打电话给很多功能吗? (据我记忆,这个过程中没有涉及递归。)

谢谢。

0 个答案:

没有答案