用PHP导出CSV格式的utf-8字符
我需要用php导出一个.csv文件。 我使用下面的代码来做到这一点:
header('Content-Encoding: UTF-8'); header('Content-type: application/csv; charset=UTF-8'); header("Content-Disposition: attachment; filename=$fn"); echo "\xEF\xBB\xBF"; // UTF-8 BOM print($csv);
$csv
包含一些波斯语字符。 当我用MS Excel打开导出的文件,显示错误的字符。 当我打开文件记事本字符显示正确。 我怎么解决这个问题?
这是我做的。
header('Content-Encoding: UTF-8');
header('Content-type: text/csv; charset=UTF-8');
header("Content-Disposition: attachment; filename=file.csv");
header("Pragma: no-cache");
header("Expires: 0");
header('Content-Transfer-Encoding: binary');
echo "\xEF\xBB\xBF";
之前我得到垃圾字符现在正确的数据导出。