代码之家  ›  专栏  ›  技术社区  ›  Martin Labuschin

包含的脚本中设置的内存限制是否适用于完整的请求?

  •  1
  • Martin Labuschin  · 技术社区  · 14 年前

    当我设置 ini_set('memory_limit', '100M'); 在包含的脚本中,这是否适用于包含此脚本的完整请求?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Pekka    14 年前

    更新re-acmatos的评论: 是的,如果你打电话的话 set_memory_limit 在子include中,它将应用于整个脚本。include不是任何类型的独立进程,只是PHP解释器查找代码的另一个地方。对翻译来说,有 脚本,无论包含多少文件。

    唯一的例外是当使用 http:// 网址。这被视为远程请求,即使它指向本地主机。为此,启动了一个新的请求来解析该文件,启动了一个新的PHP进程,它有自己的内存限制。不过,这种做法非常罕见。

    老回答:

    我不知道您在本文中所说的“完整请求”是什么意思,但答案可能是否定的。内存限制仅适用于PHP脚本及其分配/使用的内存。它不适用于使用 exec() 例如。