2016-08-03 11 views
0

Я хочу создать файл xlsx, и я использую PHPExcel. На данный момент я просто добавил строку, и я пытаюсь создать и сохранить файл, но он не работает.Сохраните файл 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», и он не работает.

ответ

2

Вы сохраняете файл .xlsx на сервере, а не на выходной поток. Вы можете сделать это с помощью:

$objWriter->save('php://output'); 

или читая сохраненный файл в буфер вывода с помощью:

readfile('test.xlsx'); 
Смежные вопросы