我有时会在我的生产服务器中看到这个错误(我的意思是,这似乎是随机的,因为我的网站流量不错,到目前为止它只发生了 5 次):
[21-Feb-2012 23:43:19 UTC] PHP Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 261900 bytes) in /home/xxxxx/xxxxx/xxx.php on line 1811
有趣的是,文件只有 798 行,而这在我之前从未发生过。
是的,这可能与我最近对脚本所做的更改有关,但这个错误对我来说根本没有意义。
请记住,我知道“Allowed memory size exhausted”错误是什么意思,我也知道如何增加内存限制。
但是,我的问题是,为什么 PHP 引用不存在的行?
我不知道如何解决这个问题,因为这对我来说毫无意义。
谢谢。
最佳答案
我刚刚找到导致内存泄漏的原因。
这是最近进入两个函数之间的递归循环的更改,尽管这种情况很少见。
1811 行是真实的,是的,但是错误所指的文件不正确。 1811 行来自另一个文件(包含在那个引用的文件中),其中一个函数是。
我仍然感谢上面评论的人的帮助。
关于PHP fatal error : Allowed memory size - on a non-existent line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9387394/