异常信息如下:exception 'PHPExcel_Writer_Exception' with message 'Could not close zip file php://output.' in F:\Publish\PHP\application\libraries\PHPExcel\PHPExcel\Writer\Excel2007.php:399
Generally this means one of 3 things: The directory where you're trying to save the file doesn't exist The directory/file has permissions that preclude you from writing to it The file is already open in some other application, or has a lock on it1.要保存到的文件目录不存在
2.没有写权限
3.文件被其它程序占用了
解决办法:修改保存部分的代码,指定临时文件的目录。
static function SaveViaTempFile($objWriter){
$filePath = $_SERVER['DOCUMENT_ROOT'] .'/tmp/' . rand(0, getrandmax()) . rand(0, getrandmax()) . ".tmp";
$objWriter->save($filePath);
readfile($filePath);
unlink($filePath);
}
And I have just replaced $objWriter->save('php://output')
with SaveViaTempFile($objWriter)