1. 文章
  2. 文章详情

修改php运行内存大小的限制

在运行PHP程序中,有时会遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的错误, 这个表示PHP脚本使用了过多的内存,并超出了系统对其设置的允许最大内存。

解决这个问题,首先我们优化代码,减少内存的使用,在程序没有问题的情况下,

我们通过下面的方法来增加PHP的内存限制(memory_limit)。 

查看php的内存限制值

使用phpinfo函数查看这个值

<?php phpinfo(); ?>

执行这个函数我们看到PHP环境配置的信息,其中有一部分是关于"memory_limit"的, 如下图:

view-php-memory-limit

设置memory_limit的值

方法1: 修改php.ini

最简单或常用的方法是修改php.ini

找到生效的php.ini文件

查看phpinfo函数的结果,找到"Loaded Configuration File"这一项,以下是个例子:

php-ini-location

这就是当前使用的php.ini文件的路径。

  • 编辑php.ini

    在php.ini中,找到"memory_limit"这一项,如果没有,你可以在文件的尾部自己增加这个参数。

    memory_limit = 128M ; 将128M改为任何你想设置的值

    保存文件

  • 重启web 服务器

    如果是web服务器使用Apache, 则执行:

    httpd restart

  • 方法2: 运行时修改php的内存设置

    在你的php代码中使用ini_set函数修改内存大小。

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


发表评论

登录后才能评论

评论列表(5条)