我正在编写一个脚本,我需要在某个时刻将内存限制设置为非常高的值。但是,之后我需要恢复内存限制。
但是,如果您的脚本未调用 ini_set 来设置内存限制, ini_get 将返回-1。
我想做这样的事情:
$oldLimit = ini_get("memory_limit");
ini_set("memory_limit", "220M");
do something
//restore memory
ini_set("memory_limit", -1);
但是, $ oldLimit 是-1。
在这种情况下-1是什么意思。
提前谢谢。
答案 0 :(得分:4)
-1表示无限制,换句话说,您受服务器物理内存的限制。因此将memory_limit设置为高位
是没有意义的答案 1 :(得分:3)
根据文档,-1表示没有内存限制(http://ca.php.net/manual/en/ini.core.php)
(话虽如此,可能会有其他记忆重新造成你的悲伤。)
此外,ini_set()仅适用于该运行脚本的持续时间,并且不是永久性的,也不适用于当时或将来运行的任何其他脚本。因此,如果您确实进行了更改,则可能不需要将它们重新设置,因为它们会在脚本结束时退回。