项目使用的是laravel5.1,使用的是laravel 推荐的excel类,Maatwebsite/Laravel-Excel,说起来只是导出6000行数据,我查了数据表才1.5mb,不知道为什么就无法导出,代码如下:
Excel::create('用户', function ($excel) use ($cellData) {
$excel->sheet('用户', function ($sheet) use ($cellData) {
foreach(array_chunk($cellData, 100) as $item){
$sheet->rows($item);
}
});
})->export('xlsx');
$cellData 是需要保存导入数据的数组,而且我开始以为是一次执行需要内存太大了,所以使用了array_chunk来分步导入,还是会报500错误,只有当数据量减少到1000行,就可以正常执行导入操作然后下载,请问大家有什么办法呢?
无法使用php.ini里的memory_limit,因为使用的是php-fpm,而它的最大内存设置为64m,报错信息:
PHP Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 65536 bytes) in /project/xxx.com/vendor/composer/ClassLoader.php on line 444
请问大家有好的解决方案吗?