【问题标题】:ini_set/ini_get memory_limit restoring memory phpini_set/ini_get memory_limit 恢复内存 php
【发布时间】:2012-05-31 03:00:57
【问题描述】:


我正在编写一个脚本,我需要在某个点将内存限制设置为非常高的值。但是,之后我需要恢复内存限制。


但是,如果您的脚本没有调用 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 在这种情况下意味着什么。
提前致谢。

【问题讨论】:

    标签: php php-ini


    【解决方案1】:

    -1 表示无限制,或者换句话说,您受到服务器物理内存的限制。因此,将 memory_limit 设置为高是没有意义的

    【讨论】:

    • thnx @periklis 我正在尝试其他解决方案
    【解决方案2】:

    根据文档,-1 表示没有内存限制 (http://ca.php.net/manual/en/ini.core.php)

    (话虽如此,可能还有其他内存限制让您感到悲伤。)

    此外,ini_set() 仅适用于该脚本运行期间,不是永久的,也不适用于当时或将来运行的任何其他脚本。因此,如果您确实进行了更改,您可能不需要将它们设置回来,因为它们只会在脚本结束时回退。

    【讨论】:

      猜你喜欢
      • 2012-11-09
      • 2023-02-09
      • 1970-01-01
      • 2023-03-09
      • 2019-12-17
      • 2013-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多