2015-03-02 98 views
0

我有此脚本,让用户下载文件:如何从下载文件中删除BOM标记?

 header('Content-Encoding: UTF-8'); 
     header("Content-Type: application/vnd.ms-excel; charset=UTF-8"); 
     header("Content-Disposition: attachment; filename=qa_report.xlsx"); 
     header("Expires: 0"); 
     header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
     header("Cache-Control: private",false); 

     //echo excel file....; 
     exit; 

文件始终有一个BOM标记,我怎么着去除BOM标记?

+0

你是如何创建“Excel”输出的?它可能只是一个假的MIME类型的CSV? – mario 2015-03-02 16:45:51

+0

@mario是的,我正在创建“Excel”输出。没有它没有假的,当我用HEX编辑器打开文件,并删除BOM文件工作,否则我不能用Excel读取文件。 – 2015-03-02 16:53:22

+1

然后检查所有PHP脚本的BOM标记。 – mario 2015-03-02 17:00:22

回答

1

我解决了这个问题。问题不在于脚本文件编码,而是其他包含文件不是使用UTF8编码而没有BOM。 所有包含文件必须使用相同的编码。

相关问题