PHP了解内存限制错误

时间:2013-09-22 10:30:10

标签: php memory

我收到此错误

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4194304 bytes)

为什么他试图分配4194304(小于他指定的134217728的限制)并且已经用尽了?

2 个答案:

答案 0 :(得分:1)

在处理资源繁重的操作时,需要考虑几个方面,并采取多个步骤来防止内存耗尽。

  • 我们在任何给定时间缓存多少数据?
  • 会有多少次迭代?
  • 如何将内存使用量降至最低?
  • 在整个执行过程中是否必须将所有数据保存在内存中?
  • ...

由于没有刷新或破坏当前执行中的旧数据,您很可能会耗尽内存。这就是为什么PHP达到峰值,允许分配系统内存。

答案 1 :(得分:0)

PHP尝试分配额外的 4194304 字节(在您的代码达到134217728的上限之后),但您的代码也用尽了。)

134217728 是您的代码超出的限制。