袁来如此的工作笔记
袁来如此的工作笔记
竹杖芒鞋轻胜马,谁怕? 一蓑烟雨任平生。

PHP Error: Allowed memory size of xxxxxx bytes exhausted

浏览量:394

what:

运行PHP程序,遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的错误


why:

这个意味着PHP脚本使用了过多的内存,并超出了系统对其设置的允许最大内存。


how:

解决这个问题,首先需要查看你的程序是否分配了过多的内存,在程序没有问题的情况下,你可以通过一下方法来增加PHP的内存限制(memory_limit)。


方法1: 直接修改主机控制台

    登入主机控制台,看一下里面有没有"memory_limit"这一项,直接修改就可以

方法2: php.ini

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

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


方法3: .htaccess
    说明: 这种方法只有在php以Apache模块来执行时才生效.
    在你的网站的根目录下找到".htaccess"文件,如果没有,可以自己创建一个。然后把以下配置放入其中
    php_value memory_limit 128M ; 可以将128M改为任何你想设置的值


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

    在你的php代码中增加以下命令行即可。 

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


查看php当前占用内存量的方法:

function convert($size){ 
$unit=array(\b\,\kb\,\mb\,\gb\,\tb\,\pb\); 
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).\ \.$unit[$i]; 
} 
echo convert(memory_get_usage(true)); 

打赏