允许的内存大小为134217728字节耗尽(试图分配42个字节)

时间:2016-05-03 08:38:38

标签: php mysql loops

我正在从mysql表中检索记录,每个查询返回超过0.2m的行数,这显然占用了大量内存。在我的情况下,我的系统上安装了8 GB的RAM,SSD为256 GB。 当我执行我的页面时,它返回以下错误:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 42 bytes) in D:\xampp\htdocs\classes\CRUD.php on line 84   

我想我应该在表行上使用线程而不是php循环? 也许我错了。任何建议/帮助将不胜感激。

2 个答案:

答案 0 :(得分:9)

默认php.ini memory_limit是128 MB。你应该:

  • 优化代码以使用正常数据量
  • 将php.ini中的memory_limit更改为更高的值,我根本不建议 - 用你的方法再次点击这一墙

答案 1 :(得分:5)

您可以使用以下代码行从文件中扩展内存:

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

将此代码添加到文件的顶部,并将16M更改为您需要的任何内容,并且应该这样做。