Phpexcel 创建错误的文件

Phpexcel create wrong file

这是我创建 xlsx 文件并使用 openoffice 打开它的简单代码

require(APPPATH.'/PHPExcel-1.8/Classes/PHPExcel.php');
require(APPPATH.'/PHPExcel-1.8/Classes/PHPExcel/Writer/Excel2007.php');
$this->load->library('excel');
$objPHPExcel = new PHPExcel();

$objPHPExcel->setActiveSheetIndex(0)
   ->SetCellValue('A1', 'Calendario Attivit');

$filename = "prova".".xlsx";
header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
header('Content-Disposition: attachment;filename="'.$filename.'"');
header("Cache-Control: max-age=0");
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');  
$objWriter->save('php://output');
exit;

文件已下载,但打开时我得到这个:

有人可以帮助我吗?

尝试在输出前添加ob_end_clean()

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');  
ob_end_clean();
$objWriter->save('php://output');