出现这个错误消息,有什么建议吗?

允许内存大小为33554432字节已耗尽(已尝试分配 43148176字节)的PHP


当前回答

如果您的脚本需要分配这么大的内存,那么您可以通过在php文件中添加这一行来增加内存限制

ini_set('memory_limit', '44M');

其中,4400万是你预计消费的数量。

但是,大多数情况下,此错误消息意味着脚本正在做错误的事情,增加内存限制只会导致相同的错误消息,但数字不同。

因此,您必须重写代码,而不是增加内存限制,这样它就不会分配那么多内存。例如,在较小的块中处理大量数据,取消保存大值但不再需要的变量,等等。

其他回答

Wordpress用户添加一行:

@ini_set('memory_limit', '-1');

or

在cpanel中设置memory_limit为-1

我运行以下命令编写器更新,现在正在工作。如果它不能解决你的问题,增加你的内存限制在memory_limit在php.ini文件。

如果使用共享主机,则不能强制增加php大小限制。

只要去你的cpanel和升级你的php版本到7.1以上,然后你就可以去了。

这里有两个简单的方法来增加共享主机的限制:

如果您可以访问PHP.ini文件,请更改PHP.ini中的行 如果你的线显示为32M,试试64M: memory_limit = 64M;一个脚本可能消耗的最大内存(64MB) 如果你不能访问PHP.ini,试着把这个添加到。htaccess文件中: php_value memory_limit 64M

你的脚本占用了太多内存。在PHP中,如果有一个超出控制的循环,并且每次循环都要创建对象或向数组中添加内容,则经常会发生这种情况。

检查有无无限循环。

如果这不是问题,尝试通过将对象设置为null来销毁它们来帮助PHP。如。$OldVar = null;

还要检查实际发生错误的代码。你认为这一行会分配大量的内存吗?如果没有,试着找出哪里出了问题。