json_encode 处理中文乱码
$data="JSON中文";???
?????$newData=iconv("GB2312","UTF-8//IGNORE",$data);???
//ignore的意思是忽略轉(zhuǎn)換時(shí)的錯(cuò)誤,如果沒(méi)有ignore參數(shù),所有該字符后面的字符都不會(huì)被保存。???
?????//或是("GB2312","UTF-8",$data);????????echo?$newData;???
<?php???
????$testJSON=array('name'=>'中文字符串','value'=>'test');???
????//echo?json_encode($testJSON);???
????foreach?(?$testJSON?as?$key?=>?$value?)?{???
????????$testJSON[$key]?=?urlencode?(?$value?);???
????}???
????echo?urldecode?(?json_encode?(?$testJSON?)?);???
?>???
查看輸出結(jié)果為:
?
{“name”:”中文字符串”,”value”:”test”}
到此,成功地輸出了中文字符。隨意使用json_encode吧。這樣子在PHP后臺(tái)輸出的JSON字符串在前臺(tái)javascript中Ajax接收后eval出來(lái)也不會(huì)出現(xiàn)中文亂碼,因?yàn)閖s在處理JSON格式數(shù)據(jù)是也是以UTF8的形式進(jìn)行的,與PHP類似,故接收PHP頁(yè)面的JSON字符串不會(huì)出現(xiàn)問(wèn)題。
轉(zhuǎn)載于:https://blog.51cto.com/shenjinchen/1434254
總結(jié)
以上是生活随笔為你收集整理的json_encode 处理中文乱码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: windows下如何github ssh
- 下一篇: nginx 报错 99: Cannot