我想创建一个xlsx文件,我正在使用PHPExcel。现在我只是添加了一行,我正在尝试创建并保存文件,但它不起作用。
我的代码是:
$objPHPExcel = new PHPExcel();
$chemin = "./././files/resultats/simulation".$singleton->getNom()."_".date("d").".".date("m").".".date("y").".xml";
$xmlFile = simplexml_load_file($chemin);
$ligne = "3";
$colonne = "B";
foreach ($xmlFile as $xml) //on aprcours les attributs <Simulation>
{
$objPHPExcel->getActiveSheet()->setTitle('Synthèse système culture');
$objPHPExcel->getActiveSheet()->setCellValue("B".$ligne,"Nom du système de culture");
$objPHPExcel->getActiveSheet()->mergeCells("B3:B4");
$ligne++; //Quand on termine une simulation, on ajoute une ligne pour afficher la simulation suivante sur la ligne du dessous
}
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="test.xlsx"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('test.xlsx');
这有什么问题?我正在尝试保存“test.xlsx”,但它不起作用。
答案 0 :(得分:3)
您正在将.xlsx文件保存到服务器而不是输出流。你可以使用:
来做到这一点$objWriter->save('php://output');
或者使用以下方法将保存的文件读取到输出缓冲区:
readfile('test.xlsx');