2012-03-29 55 views
2

我使用Facebook的API從Facebook的數據是這樣的:解碼通過Facebook的API返回的用戶名

$me = $facebook->api('/me'); 
$name = utf8_decode($me['name']); 

正確的名稱必須是:加布里斯

沒有utf8_decode,結果是:GĂbriĹ

如果我使用utf8_decode,結果再次不正確:Gábri?

任何人有任何線索?

感謝

+0

柳就可以在網頁標題字符集UTF-8 – s3yfullah 2012-03-29 12:01:42

+0

已經嘗試過了。它不工作。 – Wr1t3r 2012-03-29 12:08:55

回答

0

正確的名稱必須是:加布里斯

沒有utf8_decode,結果是:GĂbriĹ

然後你不使用UTF-8爲您的網頁(或無論你使用這個值) - 因爲Facebook 確實以UTF-8返回所有數據。

如果我使用utf8_decode,結果會再次錯誤:Gábri?

utf8_decode解碼爲ISO-8859-1 - 它不包含原始名稱中的一些字符,所以這是完全廢話。

任何人有任何線索?

你在實際上想達到什麼目的?你使用什麼編碼爲你的頁面?如果它不是UTF-8(通常它應該是網頁上的頁面),請嘗試使用iconv函數將其轉碼爲您正在使用的任何編碼(假設這可以表示這些字符)。

0

插入您的數據庫連接的代碼:

mysql_query("SET NAMES utf8"); 
    mysql_query("SET CHARACTER_SET utf8");