【发布时间】:2011-07-30 10:11:18
【问题描述】:
我正在使用phpexcel编写一个相当大的excel文件。
我正在从一个看起来像
的数组中写入它array(
[0] => stdClass Object
(
[sent] => Mar 31st, 2011 02:10PM
[to_number] => 64211111111
[additional_txt] =>
[misc_data] =>
)
...
[14058] => stdClass Object
(
[sent] => Mar 31st, 2011 02:10PM
[to_number] => 64211111111
[additional_txt] =>
[misc_data] =>
)
)
循环是
$r = 0;
foreach ($replies_obj as $row) {
$c = 'A';
foreach ($row as $col)
$xlsx->getActiveSheet()->setCellValue($c++ . $r, $col);
$r++;
}
错误是
致命错误:允许的内存大小为 134217728 字节用尽(试图 分配 105 个字节)在 /home/webspace/xxxx/test/htdocs/application/libraries/PHPExcel/Worksheet.php 在第 961 行
这是一个phpexcel问题还是我做错了什么?
我该如何解决这个问题?
【问题讨论】:
-
是/不是最坏的情况,但出于显而易见的原因,我想避免这种情况......
-
另外,我不认为你可以将它拆分成块,因为 phpexcel 似乎将工作簿保存在内存中,所以除非它支持“分段”写入,否则它不会工作
-
为什么要避免呢?如果它有效,并且您有内存,请使用它。我不知道这个类,所以只是猜测你也许可以把它分块。
标签: php arrays memory phpexcel