tec*_*ani 7 php memory export-to-excel
我有一个oracle数据库,其中存储了大量的生物识别数据,如HRV和ECG.我需要在excel表中为每个用户显示这些数据.但是这个数据是如此之大,即使对于单个用户,我们也获得了超过1,00,000条记录.目前有100~用户.
我在做的是:
当我获得所有用户的数据时,我使用phpexcel库来生成excel表.
Excel工作表的结构
问题:
PHP需要1.5 GB的RAM并将数据存储在数组中并将其发送到与phpexcel交互的函数,但这个库需要3-4个小时,然后我得到"致命:内存限制"错误.我的系统只有2 GB RAM.
我应该采取哪些步骤来优化我的代码来处理这种大小的数据并以excel格式显示相同的信息,或者我需要增加RAM?
考虑仅使用PHP来启动某种包含结果数据的Excel可读分隔文件(CSV).(这个想法是你不会通过PHP写入Excel - 因为你遇到的限制).
你可以通过类似Powershell的东西请求php生成的文件,然后让Powershell或其他脚本选择将csv文件直接打开到Excel中,然后保存为xlsx.
或者您可以让命令行php执行"系统"调用并执行脚本步骤,将csv直接打开到Excel中,然后将其保存为xlsx.