我正在调试一个php脚本。 我将memory_limit设置为64M,它确认了这一点:
ini_set("memory_limit","64M");
echo "starting script with ".ini_get("memory_limit")."Bytes of ram\n"; \\64
但是,脚本仅使用20M就会中断,从而导致标准内存耗尽错误。
Fatal error: Allowed memory size of 20971520 byte exhausted
有可能我没想到吗? 也许Apache正在为PHP设置一些东西?
答案 0 :(得分:4)
最好尝试这种无限的记忆:
ini_set("memory_limit",-1)
答案 1 :(得分:3)
您的服务器上可能已启用safe_mode
- 如果是这样,则无法使用ini_set()
更改许多设置。请看看你的php.ini并检查一下。
编辑:如果直接在php.ini中更改memory_limit的值并重新启动/重新加载您的apache(或其他),会发生什么?它在那种情况下有效吗?
EDIT2 对wuschelhases发表评论: