当我使用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。
那里有什么问题?
ini_set('memory_limit', '3072M');
被简单地忽略了:没有 scritp 可以增加自己的内存限制 - 对于任何共享虚拟主机来说都是一个很好的攻击媒介!
编辑
如果从命令行运行它,请尝试 php -d memory_limit=3072M/path/to/file
如果您从Web服务器运行它,请编辑php.ini,-htaccess或安装所需的任何内容