PHPExcel file cannot open file because the file format or file extension is not valid

I got it working now! Thanks to this phpexcel to download

I changed the code to this:

// Save Excel 2007 file
#echo date('H:i:s') . " Write to Excel2007 format\n";
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
ob_end_clean();
// We'll be outputting an excel file
header('Content-type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="payroll.xlsx"');
$objWriter->save('php://output');

I think this line:

ob_end_clean();

solved my problem.


I don't know if i can help i had the same problem and i solved with

ob_end_clean();

i put it just after

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

So don't change the header and save it as xslx anyway, the problem is the buffer!


The most likely culprit if this is a cut-and-paste of your script is the

echo date('H:i:s') . " Write to Excel2007 format\n";

If you're sending to the browser for download, then there must be no other output (echoes, print statements, dropping in and out of PHP) than the output generated to php://output by PHPExcel itself

Tags:

Php

Phpexcel