Probloem使用PHPExcel PHP保存到Excel

时间:2016-06-07 04:45:44

标签: php phpexcel

保存文件时,我对PHPExcel感到困惑。 这是我的代码

$filename = 'test';
$objReader = PHPExcel_IOFactory::createReader('Excel5');

$template = 'C:/xampp5.9/htdocs/MTD/assets/media/template/test.xls'; 

$objPHPExcel = $objReader->load($template);

$objPHPExcel->getSheet(0)->mergeCells('A9:B9')->setCellValue('A9', 'Test');
$rows = 15;
$col = 0;

$dt_download = ['rizky', 'Arie', 'Ester'];

for ($i=0; $i < COUNT($dt_download); $i++) {
 $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col+$i, $rows+$i, $dt_download[$i]);
}

$objPHPExcel->setActiveSheetIndex(0);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');

header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$filename.'.xls"');
header('Cache-Control: max-age=0');

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

我在我的控制台中得到的结果如下: enter image description here

没有任何文件作为下载文件。请告诉我如何修复它,因为我在控制台的代码中没有任何错误。

我正在使用post方法

1 个答案:

答案 0 :(得分:0)

在这一行

$objPHPExcel->getSheet(0)->mergeCells('A9:B9')->setCellValue('A9', Test);

您在哪里定义了Test。它是常量,字符串还是什么样的变量?

因为它会产生错误

Warning: Cannot modify header information - headers already sent by

并且您的代码无效。

如果Test只是一个字符串,那么你必须把它放在像这样的引号中

 $objPHPExcel->getSheet(0)->mergeCells('A9:B9')->setCellValue('A9', 'Test');