我在PHP中生成一个SpreadsheetML文件。当用户下载文件并保存文件时,默认情况下,文件将另存为Report.xml并在Excel中打开。但是,如果选择在Excel中打开文件而不是保存它,则文件名将更改为Report.xml.xls,从而导致Excel显示错误消息。如何阻止xls扩展名添加到文件名中?
这些是我发送的标题:
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="' . $filename . '.xml"');
header('Cache-Control: max-age=0');
header("Pragma: must-revalidate");
我还尝试将内容类型更改为在{IE}中工作但在其他浏览器中将文件显示为原始XML。