2011-01-25 108 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