我试图使用 PHPExcel
读取一个大于100MB的Excel文件,但是加载文件时它崩溃了。我不需要任何样式。我尝试使用:
$objReader->setReadDataOnly(true);
但它仍然崩溃。
是否有有效的方法在PHP中读取这么大的Excel文件?
我试图使用 PHPExcel
读取一个大于100MB的Excel文件,但是加载文件时它崩溃了。我不需要任何样式。我尝试使用:
$objReader->setReadDataOnly(true);
但它仍然崩溃。
是否有有效的方法在PHP中读取这么大的Excel文件?
尝试使用Spout:https://github.com/box/spout。
这是一个用于解决问题(读写大文件)的PHP库。以下是它的工作原理:
其他库将电子表格的表示保存在内存中,这使它们容易出现内存不足错误。使用一些缓存策略可以帮助解决这些错误,但会严重影响性能。
另一方面,Spout使用流来读取或写入数据。这意味着始终只保留一个行在内存中,所有读取/写入的行都从内存中释放。这允许快速读写任何大小的数据集!试试吧 :)
Spout刚刚节省了我的时间!我无法使用PhpOffice/PhPSpreedSheet读取一个大文件,出现了许多致命错误的内存大小问题,但是使用Spout却像魔法一样运行良好。