我覺得我的鬍子增長,同時試圖找出問題在這裏。json_encode與MySQL內容和utf-8變音符號
基本問題是,變音符號/特殊符號äöß...不起作用。我想每個人都對這些問題感到厭倦,但所有在網上找到的解決方案似乎並不奏效。
我在utf-8 Mysql數據庫中有utf-8內容。我覺得問題在數據庫連接的某個地方,但我無法弄清楚。
character_set_client字符UTF8
是character_set_connection UTF8
character_set_database UTF8
character_set_filesystem二進制
character_set_results UTF8
被character_set_server LATIN1
character_set_system UTF8
林不知道,如果問題是LATIN1對被character_set_server因爲IM沒有進入該MySQL的東西。我也不知道如何改變,因爲我無法訪問MySQL服務器的配置文件。
不管怎麼說,如果我從數據庫中得到我的結果並回顯它,print_r會給出正確的結果。
ini_set('default_charset','utf-8');
header('Content-Type: text/plain; > charset=utf-8');
火狐說字符編碼是utf-8,但如果當我輸出:
print_r($listnew);
echo json_encode($listnew[5]);
print_r的結果一切權利,但json_encode確實錯了。
的print_r:
[5] => Array (
[id] => 5
[data] => U-Bahnhof Theresienstraße
[size] => 17
)
json_encode:
{ 「ID」:5, 「數據」: 「U-BAHNHOF Theresienstra \ u00dfe」, 「大小」:17}
我知道json_encode需要一個utf-8字符串在那裏正常工作,我覺得我在這裏有一個編碼問題,但我不能確定它在哪裏。
任何幫助,將不勝感激,
在此先感謝。
I3
我沒有意識到這個事實,它可能會被譯碼翻譯,所以我跟蹤哪裏沒有錯誤。 我只是生成輸出,但我後來不處理json對象,所以可能會由其他應用程序解決。 對不起,並感謝您的幫助, i3 – i3rutus 2010-05-06 19:39:10
有時編碼我使用json_encode($ array,JSON_UNESCAPED_UNICODE) – Miguel 2014-01-25 16:18:53