如何使得中文不被json_encode 不編碼成unicode
使用php自帶的json_encode
函數對數據進行編碼時,中文都會變成unicode,導致不可讀,並且增加傳輸數據的大小,比如,對字符串“我愛水煮魚”進行json_encode
後,輸出的是”\u6211 \u7231\u6c34\u716e\u9c7c”,那麼如何使得中文不被json_encode不編碼成unicode呢,有兩種方法:
1.先將中文字段urlencode
,json_encode
後,再用urldecode
,也可以顯示中文。
echo urldecode(json_encode(urlencode("我爱水煮鱼")));
2.如果使用的PHP版本是5.4以上的版本,json_encode
函數已經新增了一個選項: JSON_UNESCAPED_UNICODE
。加上這個選項後,就不會自動把中文編碼了。
echo json_encode("我爱水煮鱼", JSON_UNESCAPED_UNICODE);