2014-12-02 45 views
0

將json解碼爲中文: json_decode(''\ ud83d \ ude18 \ ud83d \ ude18 \ ud83d \ ude18 \ ud83d \ ude18 \ u597d \ ubb6 \ u4f19 \ ud83d \ uded \ ud83d \ ude0d \ ud83d \ ude0d'') ; 不工作?PHP:將json解碼爲中文,並且無法正常工作?

它適用於中國而不是興高采烈

可以請您給我任何的想法吧

+0

使用雙引號'\ ud83c \「' – Class 2014-12-02 07:24:31

+0

用單引號和雙,但沒有作品兄弟 已經 打印json_decode(試過alrady試圖」 udf83 \ ud83c \ udf83 \ ud83c \ udf83" ); print json_decode('\ ud83c \ udf83 \ ud83c \ udf83 \ ud83c \ udf83'); – 2014-12-02 07:28:05

+0

使用特殊字符/序列'\ u'或'$',這樣你應該使用'''所以PHP解析器知道可能包含需要區別對待的項目 – Class 2014-12-02 07:29:21

回答

2

,這不是一個有效的JSON字符串 - JSON字符串必須是雙引號

編輯裏面:帶着失敗的例子上面,包裹在雙引號的UTF-8,而且解碼:

var_dump(json_decode('"\ud83c\udf83\ud83c\udf83\ud83c\udf83"')); 
string(12) "" 

(我不知道字形應該是什麼樣子,我不è已經知道,如果我已經安裝了合適的字體,但該字符串解碼)

+2

也許是一個例子 – 2014-12-02 07:29:06

+0

它是有效的JSON我得到它就像 回聲json_encode('工作'); 而我編碼中文json 反之亦然,我想解碼哪些不適合我。 得到了點?因爲它是從json_encode函數獲得的,所以它是有效的json – 2014-12-02 07:34:30

+0

仔細看,json_encode的var_dump輸出以「」開始並以「」結尾 - 每個var_dump(json_encode('\ ud83c \ udf83')有兩組引號); 字符串(16)「」\\ ud83c \\ udf83「」 ' – Andras 2014-12-02 07:39:29