一、JSON處理中文遇到的問題
php5.2新增的json功能是非常受歡迎的,但是經過測試發現,json_encode對中文的處理是有問題的:
1.不能處理GB編碼,所有的GB編碼都會替換成空字符.
2.utf8編碼的中文被編碼成unicode編碼
二、JSON中文問題的處理
現在我們來考慮一下PHP的JSON擴展無法處理中文的問題,基本的解決方案就是在服務器端進行json編碼前先對中文進行rawurlencode轉碼,全部變爲英文字符,然後對json編碼後的字符串再用rawurldecode轉換回中文即可。
總的來說,這些左轉右轉編碼的方式效率都不會很高,特別是處理的字符串很多的時候,效率不敢恭維,我們還是需要尋找更快速的方式,或者最好是PHP的JSON擴展能夠直接支持中文,那就最好了。