【发布时间】:2013-02-18 10:17:51
【问题描述】:
我从数据库中的值构建一个 csv 字符串。最后的字符串存储在我的 $csv 变量中。
现在我提供这个字符串供下载,如下所示:
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=whatever.csv");
header("Pragma: no-cache");
header("Expires: 0");
echo $csv;
例如,当我在 Notepad++ 中打开它时,它会显示 Ansi as UTF-8。我怎样才能将其仅更改为 Ansi?
我试过了:
$csv = iconv("ISO-8859-1", "WINDOWS-1252", $csv);
这并没有改变任何东西。
谢谢!
解决方案: $csv = iconv("UTF-8", "WINDOWS-1252", $csv);
【问题讨论】:
-
看PHP手册的mbstring部分
-
源数据是 UTF-8,但您是从 ISO-8859-1 转换而来的!
-
@Álvaro G. Vicario:是的,这就是解决方案:D
-
@user1856596 - 提供解决方案的正确方法是“您的答案”文本框。 Fab 已经这样做了。