帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  遇Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 133431312 bytes)解决

遇Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 133431312 bytes)解决

2023-10-19 15:17:57 340

(一)报错提示:

image.png 

(二)原因:

php.ini中的内存分配的问题,默认php代码能够申请到的最大内存字节数就是134217728 bytes,如果代码执行的时候再需要更多的内存,就会报错了,于是就将php.ini文件中的配置改了一下。

 

(三)解决方法:

 

方法一: 修改php.ini(推荐)

 

进入php.ini文件,将其中的memory_limit 由原本的128M改为256M

 

方法二: 在程序里面添加如下语句

 

ini_set(”memory_limit”, ”256M”);

 

方法三: 添加如下内容

 

php_value memory_limit 256M

 

但是以上的方法其实都不能从根本上解决问题,因为一个php脚本一次请求的内存空间就要超过128M,那不管以后将memory_limit设置成多大,以后肯定有出问题的时候。究其原因,是在编码时,仅仅对变量赋值却从来没有 unset ($var) 过。导致了内存占用越来越多,所以以后一个变量不再使用之后,一定要记得unset掉它,如下:

 

方法四: 根据报错提示中的路径找到对应文件(index.php)的指定行数 67行 ,可以发现是与$ num 变量相关的,所以因为设置了$ num 所以我们要把它unset掉:

在文件的末行输入 unset($num); 即可:

 

修改完配置文件之后一定要重启才会生效。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: