PHPExcel:标题充满乱码

问题描述 投票:0回答:2

我不想将 html 表提取到 .xsl 文件中。我已经在 symfony2 中安装了 PHPExcel,但是当我只想通过将随机页面提取到 .xls 文件来测试它时,第一部分的文件充满了乱码,我真的不知道为什么:http://images4。 hiboox.com/images/2714/f657dfd1d406e941cfbe3ff9dbc10f7b.png

在这下面我有我的 html 表格。

这是代码,谢谢:

$objPHPExcel = new \PHPExcel();
    $objPHPExcel->getProperties()->setCreator("foo");
    $objPHPExcel->getProperties()->setLastModifiedBy("bar");
    $objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
    $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
    $objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
    $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Hello');
    $objPHPExcel->getActiveSheet()->SetCellValue('B2', 'world!');
    $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Hello');
    $objPHPExcel->getActiveSheet()->SetCellValue('D2', 'world!');
    echo date('H:i:s') . " Write to Excel2007 format\n";
    $objWriter = new \PHPExcel_Writer_Excel2007($objPHPExcel);
    //$objWriter->save(str_replace('.php', '.xlsx', __FILE__));
    //$objWriter->save('a.xls');
    header('Content-type: application/vnd.ms-excel');
    header('Content-Disposition: attachment; filename="PV AAPC"');
    $objWriter->save('php://output');
php symfony phpexcel
2个回答
0
投票

确保您没有发送任何其他内容到输出。确保没有 echo 或 print 语句;脚本文件中没有 BOM 标头;并且

?>
<?php
标签之间没有空行。

您还使用 Excel2007 Writer(它生成 OfficeOpenXML 格式的 .xlsx 文件)编写文件,但发送 BIFF 格式的 .xls 文件的内容类型。

您需要发送 OfficeOpenXML 格式

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
文件的
.xlsx
内容类型标头(使用
Excel2007
编写器生成);或者,如果您想创建 BIFF 格式的
Excel5
文件(需要
.xls
 的内容类型标头),请使用 
application/vnd.ms-excel

Writer

0
投票

在发送标头之前显示一些调试信息。

去掉“echo date ...”这一行,就ok了!

© www.soinside.com 2019 - 2024. All rights reserved.