0

当我尝试在 Csv 文件中插入波兰语字符时。波兰语字符自动转换为它们各自的 htmlentities

<?php

header('Content-Type: text/csv; charset=UTF-8');   
header( 'Content-Disposition: attachment;filename=reports.csv');

echo ('åĄĆĘŁŃÓŚŹŻąćęłńóśźż');

?>
Output: å&#260;&#262;&#280;&#321;&#323;Ó&#346;&#377;&#379;&#261;&#263;&#281;&#322;&#324;ó&#347;&#378;&#380;

我需要在那里显示波兰字符。

谁能帮我解决这个问题?

谢谢

4

1 回答 1

0

试试这个:

<?php

header('Content-type: application/ms-excel');
header('Content-Disposition: attachment; filename=reports.csv');

$data = 'åĄĆĘŁŃÓŚŹŻąćęłńóśźż';

$csv_output = '="'.$data.'"'.chr(9).chr(13);

$csv_output = chr(255).chr(254).mb_convert_encoding($csv_output, 'UTF-16LE', 'UTF-8');

echo $csv_output;

?>

也不要忘记将您的 php 文件保存为没有 BOM 的 UTF-8 ...

chr(9)分隔字段并chr(13)分隔行...

于 2012-09-18T06:51:19.247 回答