SpreadsheetML文件扩展名由IE和FF改变 – 错误的内容types?

我正在PHP中生成一个SpreadsheetML文件。 当用户下载文件并保存时,默认情况下文件保存为Report.xml并在Excel中打开。 但是,如果select在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"); 

我也尝试将内容types更改为在IE中工作的text/xml ,但导致文件在其他浏览器中显示为原始XML。