4

PHP 致命错误:第 0 行的 Unknown 中允许的内存大小为 262144 字节已用尽(尝试分配 523800 字节)

“php5 --help”也会发生同样的事情

我已经对此进行了研究并阅读了我应该:1)增加 php.ini 中的内存限制 - 在 php.ini 的所有实例中为 128MB - 应该足以运行 php cli help 2)使脚本更高效 -显然不适用于 --help

如果可以的话请帮忙 ?

4

6 回答 6

12

检查 PHP CLI 的 php.ini 文件 (/etc/php5/cli/php.ini)。

确保 memory_limit 声明设置了其单位:

memory_limit = 32M

不是

memory_limit = 32

它为我修好了。我希望它也适合你。

于 2011-04-18T22:15:56.697 回答
2

我假设您正在安装最近的 Linux。我使用的是 Ubuntu,但任何 Debian 之类的 Linux 发行版都将是相似的,其他发行版也不会有太多差异。

在 /etc/php5/ 我有以下配置目录:

root@delphic:/etc/php5# ls -la
total 20
drwxr-xr-x  5 root root 4096 2011-01-15 00:52 .
drwxr-xr-x 92 root root 4096 2011-01-15 00:51 ..
drwxr-xr-x  2 root root 4096 2011-01-05 10:55 apache2
drwxr-xr-x  2 root root 4096 2011-01-15 00:52 cli
drwxr-xr-x  2 root root 4096 2011-01-15 00:51 conf.d
root@delphic:/etc/php5# cd cli
root@delphic:/etc/php5/cli# ls -al
total 76
drwxr-xr-x 2 root root  4096 2011-01-15 00:52 .
drwxr-xr-x 5 root root  4096 2011-01-15 00:52 ..
lrwxrwxrwx 1 root root     9 2011-01-15 00:52 conf.d -> ../conf.d
-rw-r--r-- 1 root root 67457 2011-01-12 19:51 php.ini 
root@delphic:/etc/php5/cli# grep memory php.ini 
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = -1

您确定您也更改了 CLI 内存限制吗?

如果您使用的是共享托管服务,则必须向他们的支持寻求帮助以更改限制,或者让他们找出即使在命令行上 php 也会消耗如此多内存的原因。

于 2011-01-15T00:01:03.540 回答
1

文本

允许的内存大小为 262144

建议 PHP 不认为它的内存限制是 128MB。也许你错过了一些 php.ini 文件?您可以在线发布您的 php.ini 吗?

于 2011-01-14T23:11:54.370 回答
1

我的 php.ini 文件中的值有 1024MB,但我仍然收到错误消息。我所做的修复是将其更改为 1024M,奇怪的是示例文本说 128MB

于 2012-09-15T07:23:55.673 回答
1

ini 上的说明说要使用 MB 真是太奇怪了,但这对我不起作用,标准的 apt-get 安装,我添加的唯一其他一点是 APC。我不知道可能出了什么问题,谢天谢地,上面的一些评论建议只使用 M

似乎是 IMO 的错误,尤其是考虑到 ini 上的说明。

ini 说这个 //脚本可能消耗的最大内存量(128MB)

但只有这对我有用:/ 228M

于 2012-03-27T18:04:33.617 回答
0

你能跑来php -i获取PHP信息吗?您可能没有加载预期的 php.ini 文件,并且内存限制要低得多。虽然,PHP CLI 会使用 PHP 来输出 CLI 帮助真的很奇怪。

更新您可能也无法运行php -i,但php --ini可能会至少向您展示正在使用的(如果有的话)INI 文件。

于 2011-01-14T23:12:13.270 回答