UTF8真正的解码

时间:2011-01-25 15:00:09

标签: php html-entities utf8-decode

可能是一个非常简单的问题,但我想知道如何将utf8字符解码为可读字符。

例如:

L'heure suprême

进入

L'heureprprême

我尝试了以下内容:

utf8_encode , utf8_decode And `html_entity_decode($string, ENT_COMPAT, "UTF-8");`

输出从未给我正确的字符,例如

 html_entity_decode($string, ENT_COMPAT, "UTF-8"); returned L'heure suprême

编辑: 这是一个愚蠢的问题,html_entity_decode($string, ENT_COMPAT, "ISO-8859-15");做了伎俩

1 个答案:

答案 0 :(得分:1)

为了正确显示结果,您需要告知接收端使用的编码:

header('Content-Type: text/plain; charset=UTF-8');

$string = 'L'heure suprême';
print html_entity_decode($string, ENT_COMPAT, "UTF-8");

没有显式命名charset编码的输出会引发未定义的行为。今天早些时候,有人在Unicode和字符集上建议a great article by Joel Spolsky。这是一个很好的阅读,我建议你“略过”它。