0

当我使用 php 语言为大数据执行一些脚本时,例如导出数据、提取和打印数据,出现错误:

Fatal error: Out of memory (allocated 493617152) (tried to allocate 345571051 bytes)

虽然我通过以下指令增加了脚本中的内存:

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

为了更加放心,我什至将 php.ini 文件中 memory_limit 的值修改为 3072M:

memory_limit=3072M

所用服务器上的 RAM 大小为 4GB。

那里有什么问题?

4

1 回答 1

0

ini_set('memory_limit', '3072M');被简单地忽略:没有脚本可以增加它自己的内存限制——对于任何共享的虚拟主机来说都是一个很好的攻击向量!

编辑

如果您从命令行运行它,请尝试 php -d memory_limit=3072M /path/to/file

如果您从网络服务器运行它,请编辑 php.ini、-htaccess 或安装所需的任何内容

于 2012-06-14T12:56:29.737 回答