我正在编写一个脚本,我需要在某个时间点将内存限制设置为非常高的值。但是,我需要在那之后恢复内存限制。
但是,如果脚本尚未调用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 是什么意思。提前谢谢。
-1 表示无限制,换句话说,您受到服务器物理内存的限制。因此,将memory_limit设置为高值是没有意义的
根据文档,-1 表示没有内存限制 (http://ca.php.net/manual/en/ini.core.php)
(话虽如此,可能还有其他记忆结构导致你悲伤。
此外,ini_set() 仅适用于该正在运行的脚本的持续时间,并且不是永久性的,也不适用于当时或将来运行的任何其他脚本。因此,如果您确实进行了更改,则可能不需要设置它们,因为它们只会在脚本结束时回退。