我在php脚本中生成一个包含大约60000行的excel文件。生成所需数据并写入objPHPExcel对象大约需要18秒,但在将其保存到本地文件或发送回服务器时需要超过30秒。以下是两种方案的保存脚本。
保存到本地文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save("downloads/". $filename);
直接将输出保存到浏览器
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=1');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
在保存预期的大型文件时是否存在此延迟,或者是否有提高保存性能的方法?
注意:生成大约3500个excel行的脚本在大约3秒内运行。