您当前位置:知识库 >云服务器 >服务器教程 >浏览文章

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

来源:不详 日期:2023/10/19 15:17:57 阅读量:(0)

(一)报错提示:

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); 即可:

 

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


关键字:
声明:我公司网站部分信息和资讯来自于网络,若涉及版权相关问题请致电(63937922)或在线提交留言告知,我们会第一时间屏蔽删除。
有价值
0% (0)
无价值
0% (10)

分享转发:

发表评论请先登录后发表评论。愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。