php中json_encode中文编码问题分析
眾所周知使用json_encode可以方便快捷地將對(duì)象進(jìn)行json編碼,但是如果對(duì)象的屬性中存在著中文,問(wèn)題也就隨之而來(lái)了。
json_encode會(huì)將中文轉(zhuǎn)換為unicode編碼
例如:'胥'經(jīng)過(guò)json_encode處理后變?yōu)?#39;\u80e5',最終的json中中文部分被替換為unicode編碼。我們要解決的就是將對(duì)象轉(zhuǎn)換為json并保證對(duì)象內(nèi)部的中文在json中仍然是以正常的中文出現(xiàn),現(xiàn)在看來(lái)只使用json_encode是不能達(dá)到目的的。
我的解決方法:先將類(lèi)中的中文字段進(jìn)行url編碼(urlencode),然后再對(duì)對(duì)象進(jìn)行json編碼(jsonencode),最后url解碼(urldecode)json,即最終的json,里面的中文依舊是那個(gè)中文!
測(cè)試代碼如下:
程序輸出結(jié)果:
{"item1":1,"item2":"\u4e2d\u6587"}
{"item1":1,"item2":"中文"}
{"item1":1,"item2":"\u4e2d\u6587"}
"\u80e5"
希望本文起到拋磚引玉的作用,收集大家更好的解決方法。
轉(zhuǎn)載于:https://www.cnblogs.com/study100/p/3245553.html
總結(jié)
以上是生活随笔為你收集整理的php中json_encode中文编码问题分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 酷炫Jquery收集
- 下一篇: (转载)php array_merge