以下代码用于使用 PHPExcel 将 XLSX 文件转换为 CSV:
<?php
require_once 'PHPExcel/PHPExcel/IOFactory.php';
$excel = PHPExcel_IOFactory::load("test123.xlsx");
$writer = PHPExcel_IOFactory::createWriter($excel, 'CSV');
$writer->setDelimiter(";");
$writer->setEnclosure("");
$writer->save("test123.csv");
?>
我正在尝试将 70MB 的大型 excel 文件转换为 CSV。我收到此错误:
Warning: simplexml_load_string(): Memory allocation failed : growing buffer
我在 php.ini 中增加了 max_execution_time
和 memory_limit=-1
。
谁能告诉我为什么这个错误会导致我哪里出错了?
好吧,有几个建议给你:
toArray()
方法消除循环遍历构建数组的单元格。尝试组合或所有上述建议,看看它是否可以帮助您。另外,请参阅论坛中的 this 讨论。
参考 this 和下面的描述来理解它。