我有問題! 我想在PHP中打印一個unicode字符串(如'سلام')! 但是當我使用回聲只有一些? apear!Unicode字符串php
我該怎麼辦? 這種情況發生時,我想選擇從數據庫中檢索的字符串!
echo 'سلام';
結果是:
????
我試圖用頭功能,但沒有幫助我!
我有問題! 我想在PHP中打印一個unicode字符串(如'سلام')! 但是當我使用回聲只有一些? apear!Unicode字符串php
我該怎麼辦? 這種情況發生時,我想選擇從數據庫中檢索的字符串!
echo 'سلام';
結果是:
????
我試圖用頭功能,但沒有幫助我!
你需要做三件事情:
SET NAMES 'utf8'
。Content-type
HTTP標頭設置爲(例如)text/html; charset=utf-8
來完成此操作。當然,用任何你想要的編碼來替換「UTF-8」,它支持你需要的字符。沒有必要更改數據庫表(可能的性能增益除外)。如果您決定使用UTF-16或其他不是(大部分)ASCII兼容的東西,則可能需要更改HTML模板等。
您需要在HTTP響應中聲明使用的字符編碼。您可以使用header
function:
header('Content-Type: text/html;charset=utf-8');
有了這個輸出是被宣佈爲HTML與字符編碼UTF-8。請注意,如果您已經將數據發送到客戶端而不進行緩衝,則不能使用header
。因此,使用output control緩衝輸出,以便可以修改標題,儘管已經有一些輸出或在任何輸出之前使用header
。
非常感謝,但正如我所說,它沒有工作! ! – undone 2010-09-06 10:37:18
也許我有點爲時已晚,但這個工作對我來說:
echo utf8_encode('سلام');
你指定合適的字符編碼? – Gumbo 2010-09-06 10:42:49
不知道爲什麼這是倒票,這個問題是完全有效的。我終於找到工作的解決方案是在這裏:http://stackoverflow.com/questions/2446778/how-to-display-unicode-data-with-php – Wex 2012-03-19 12:26:23