博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Allowed memory size of 134217728 bytes exhausted解决办法(php内存耗尽报错)【简记】
阅读量:4959 次
发布时间:2019-06-12

本文共 710 字,大约阅读时间需要 2 分钟。

报错:

PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes) in。。。

解析:

134217728/1024/1024 = 128

解释:

内存已耗尽,这关系到PHP的memory_limit的设置问题,根据自己的需要及参考本机的内存大小修改php内存限制。

这里有三种解决方案 :

1、修改php.ini (改配置)
memory_limit = 128
这种方法需要重启服务器,很显然,此方法对虚拟机有限制。
2、通过ini_set函数修改配置选项值 (改代码)
ini_set (‘memory_limit’, ‘128M’) ;

3、直接取消PHP的内存限制(改代码)

ini_set ("memory_limit","-1");

值得注意的是如果通过上面的方式修改后还会报这个错误,那你要检查一下你写的代码是否存在效率问题。(举例:从数据库查询到的数据加载到内存里面,然后php 进行数据处理,如果代码写的不是很严谨存在效率问题,特别是数据量非常大的时候也会导致内存耗尽)

本人遇到这个问题就是因为最开始做公司后台管理系统某个统计功能的时候代码写的不是很严谨,导致后来数据量达到一定量后,出现了内存耗尽。当然咯,自己留的坑最后还得自己填上。本人最终通过重构之前的代码,优化了代码执行效率,解决了内存耗尽问题。

---------------------
参考资料:

转载于:https://www.cnblogs.com/SeeYouBug/p/9774262.html

你可能感兴趣的文章
10分钟搞懂树状数组
查看>>
Spring Cloud与微服务构建:微服务简介
查看>>
HTTP缓存和CDN缓存
查看>>
HDU-1171 Big Event in HDU(生成函数/背包dp)
查看>>
Babel 是干什么的
查看>>
cocos2dx-3.0(8)------Label、LabelTTF、LabelAtlas、LabelBMFont使用之法
查看>>
Mysql数据库乱码总结
查看>>
BZOJ.3160.万径人踪灭(FFT Manacher)
查看>>
CODE[VS] 1842 递归第一次
查看>>
20180418小测
查看>>
Spring Cloud是怎么运行的?
查看>>
12 联结表
查看>>
数字三角形
查看>>
NGUI 减少drawcall规则
查看>>
xss攻击
查看>>
开发环境中快速部署Oracle Essbase(Rapid deployment of oracle essbase in development envrioments)...
查看>>
开发进度4
查看>>
HDOJ_2754 素数种类统计
查看>>
内存分析工具 MAT 的使用
查看>>
三元表达,匿名函数
查看>>