1.首先要确认导出excel之前是否有清空缓存区
ob_end_clean();
$objWriter->save('php://output');
2.PHPExcel\Calculation\Functions.php文件中函数TYPE()
把
elseif(is_array($value)) {
return 64;
//break;
}
中的break注释掉
3.试下你导出的excel类型
把
$objWriter = new \PHPExcel_Writer_Excel5($objPHPExcel);
$file_name = date('YmdHis').'.xls';
改成
$objWriter = new \PHPExcel_Writer_Excel2007($objPHPExcel);
$file_name = date('YmdHis').'.xlsx';
我这边出现的问题是在5.6导出xls正常,换成7+版本以后导出报错,换成xlsx就正常了,但是导出以后会提示一些修复提示,然后发现是excel样式部分缺失。不过这个对目前使用影响不大,实在没办法把php版本换成5.6也可以得到解决