2011-01-25 110 views
1

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

例如:

L'heure suprême 

进入

L'HEURE最高法院

我试过如下:

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

这些是** HTML实体**,不是UTF-8字符。 – 2011-01-25 15:09:42

回答

1

为了要正确显示你的结果,你需要告诉接收端,用来编码:

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

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

未明确命名字符集编码会导致输出未定义的行为。今天早些时候,有人建议在Unicode和字符集上使用a great article by Joel Spolsky。它使得阅读很好,我建议你“翻阅”它。

+0

它不是用于显示,而是在不同的来源上匹配。 – 2011-01-25 15:06:49