首页  >  问答  >  正文

允许的 X 字节内存大小已耗尽

<p><br /></p><blockquote> <p>致命错误:允许的内存大小 67108864 字节已耗尽(尝试分配 13965430 字节)</p> </blockquote> <p>PHPInfo 显示我的内存限制为 128M,所以我很困惑为什么错误说我只有 64M。 phpinfo有可能报错吗?或者 PHP 使用两个单独的 php.ini?</p> <p>该错误是由我的一位同事在我不知情的情况下添加的主要 php 文件之一中的 ini_set 调用引起的。</p>
P粉176203781P粉176203781442 天前497

全部回复(2)我来回复

  • P粉312195700

    P粉3121957002023-08-28 16:05:35

    ini_set('memory_limit', '128M');

    php.ini  =>  memory_limit = 128M

    php_value memory_limit 128M

    回复
    0
  • P粉445750942

    P粉4457509422023-08-28 13:27:06

    PHP 的配置可以在多个地方设置:

    1. 主系统php.ini(通常在/etc某处)
    2. Apache 配置中的某个位置(httpd.conf 或每个站点的 .conf 文件,通过 php_value
    3. CLI 和 CGI​​ 可以有不同的 php.ini(使用命令 php -i | grep memory_limit 检查 CLI 配置)
    4. 本地 .htaccess 文件(也称为 php_value
    5. 脚本内(通过 ini_set()

    在 PHPinfo 的输出中,“Master”值是编译后的默认值,“Local”值是实际生效的值。它可以与默认值保持不变,也可以在上述任何位置被覆盖。

    另请注意,PHP 通常具有不同的 .ini 文件用于命令行和基于 Web 服务器的操作。从命令行检查 phpinfo() 将报告与在基于 Web 的脚本中运行它不同的值。

    回复
    0
  • 取消回复