Php simplexlsx内存不足

Php simplexlsx内存不足,php,memory,xlsx,Php,Memory,Xlsx,我使用simplexlsx类读取38879行数据(在一张工作表上),但内存有问题(内存不足)。我的服务器的内存大小是48千兆,我将内存限制(php.ini)设置为9000MB,但问题仍然存在!你能告诉我我应该怎么做吗?突破限制很难处理通过数千行数据运行的内容,除非有具体原因。这是由于代码中内存的严重浪费,您的情况可能是脚本正在创建一个巨大的行数组(或对象)。我建议修改代码以提高内存效率,而不是增加内存限制 我从未听说过SimpleXLSX,但我使用过PHPExcel,我从未遇到过任何问题。如果使

我使用simplexlsx类读取38879行数据(在一张工作表上),但内存有问题(内存不足)。我的服务器的内存大小是48千兆,我将内存限制(php.ini)设置为9000MB,但问题仍然存在!你能告诉我我应该怎么做吗?

突破限制很难处理通过数千行数据运行的内容,除非有具体原因。这是由于代码中内存的严重浪费,您的情况可能是脚本正在创建一个巨大的行数组(或对象)。我建议修改代码以提高内存效率,而不是增加内存限制

我从未听说过SimpleXLSX,但我使用过PHPExcel,我从未遇到过任何问题。如果使用PHPExcel对您来说不是太多的工作,我建议您使用它


SimpleXLSX和PHPExcel在很多方面都非常出色,但在阅读大型电子表格方面都很糟糕(你不可能样样都好!)

我也遇到了同样的问题,甚至在使用PHPExcel的优化(缓存、读取数据块等)时,也没有成功。内存不足的错误已经修复,但读取一个不太大的文件需要花费很长时间


所以我最终创建了一个库来解决这个规模问题。试试看,如果有帮助请告诉我:

错误是:致命错误:在359行的C:\xampp\htdocs\class\xlsx.php中内存不足(分配了83099648)(尝试分配了34791104字节)。更改内存限制后是否重新启动了服务器?是的,当然不是服务器,而是php/apache服务。是的,这就是我的意思,对不起。您可以先尝试将文件拆分为多个部分。或者只是增加限制,看看会发生什么。我使用PHPExcel是因为PHPExcel也有同样的问题,我尝试过缓存方法,但没有任何效果,仍然是内存不足。你能解释一下吗?你能发布从电子表格收集数据的代码吗?根据电子表格的大小,你可能需要做的事情是“分块”阅读的。PHPExcel有关于此的文档。我讨厌(讨厌)缺少关于逐行阅读的文档,就像在PHP中使用fgetcsv()一样。PHPExcel在他们的文档中说,有一个表的内存表示形式,我猜它通过注意toArray()方法包括单元格数据。我认为只有记忆中的方法是浪费和愚蠢的。检查一下:很抱歉,第一条评论应该是:“我使用SimpleXLSX是因为PHPExcel”(人为错误,对不起),我认为没有其他方法可以解决这个问题……这是一个很棒的库