在使用PHP输出Excel文件时,它工作正常,但是,每个Excel文件顶部有3个空白行。标题是这样的:
<?php
header ("Expires: Mon, 28 Oct 2008 05:00:00 GMT");
header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
header ("Content-type: application/vnd.ms-excel");
header ("Content-Disposition: attachment; filename=\"GridExport.xls" );
header ("Content-Description: Generated Report" );
echo $content_for_layout;
?>
在文本编辑器(例如记事本)中查看3个空白行时,我实际上看到一个空白行,后跟一个带有单个空格的行,后跟另一个空行,因此基本上相当于:
\n.\n\n
其中句号=单个空格。
最后,当我在Excel中打开文件时> 2003年,我收到有关文件格式不正确的错误消息,但是单击“是”会打开它(减去3行空行问题)。 是否可以发送正确的标头以获取此消息?请参阅屏幕截图:
https://twiki.auscope.org/wiki/pub/Grid/WfsReaderWs/OpenFileWarning.png
答案 0 :(得分:0)
如果输出带有XLS扩展名的CVS,Excel 2007及更高版本会向您发出警告,表明它不是excel文件,但无论如何都要打开它。早期版本不会发出警告。 正确地将其作为CSV文件输出不会导致该错误,或阻止其他CVS处理应用程序处理它。
关于行是什么 - 不知道$ content_for_layout
中的内容是不可能的答案 1 :(得分:0)
不应:
header ("Content-Disposition: attachment; filename=\"GridExport.xls" );
是
header ("Content-Disposition: attachment; filename=\"GridExport.xls\"" );
我不知道这是不是答案,但无论如何我看起来都不对。