在Excel中无法正确加载CSV文件

我见过几个类似的问题,但没有一个能够解决我的问题。

我有一个导出到CSVbutton,从我的数据库导出CSV结果。

我不想保存文件,但我只想使用标题将回显内容导出到应该在Excel(或类似产品)中打开的文件。

所有工作正常,但Excel似乎不分开的值,而是显示在一行中的所有行与逗号完好无损。 我在其他地方find了一个解决scheme,我应该在第一行添加“sep =,\ r \ n”来告诉Excel使用逗号作为分隔符,这样就可以很好地工作。 但是,在其他产品中,它现在在第一行显示sep =,并继续输出的剩余部分。

这是我正在使用的代码:

header("Expires: 0"); header("Cache-control: private"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Description: File Transfer"); header("Content-Type: application/vnd.ms-excel"); header("Content-disposition: attachment; filename=export.csv"); echo "sep=,\r\n"; // This makes it work in excel but fails in other products such as openoffice echo "this,is,just,a,test\r\n"; exit; 

正如马克·贝克(Mark Ba​​ker)所build议的那样,由于分析仪是通过语言环境设置的,所以我将其改为; 它像一个魅力工作:)谢谢!