本文目录一览:
- 1、php json乱码问题
- 2、php怎么解析utf-8带BOM编码的json数据,php解析json数据返回NULL
- 3、php json 返回时的编码问题!网页编码是utf8的
- 4、php解析json数据
- 5、PHP关于AJAX JSON如何设置GBK UTF8的问题,我接受不到数据库返回的中文,只能接受英文
php json乱码问题
你网页用的是什么编码,就让PHP服务器端返回什么编码的json。最好两边统一,比如都用UTF8 或者 gb2312。推荐使用UTF8。
php怎么解析utf-8带BOM编码的json数据,php解析json数据返回NULL
方法一:在你输出的时候就进行处理,在转为json之前对中文进行转码;
方法二:
$json = json_decode(trim($json,chr(239).chr(187).chr(191)),true);
方法三:
function prepareJSON($input){
if(substr($input,0,3) == pack("CCC",0xEF,0xBB,0xBF)) $input = substr($input,3);
return $input;
}
php json 返回时的编码问题!网页编码是utf8的
这个很正常呀
"\u4f60\u597d" 就是json编码后的数据。是不是---‘你好’ 嘎嘎。
我猜你是用的类似ajax的无刷新提交吧
javascript有个函数eval()可以解码json的
获得这个数据的方法 :
var data=eval(sql_data)
其中sql_data就是数据库返回的值
这样之后变量data就是一个数组。
然后你可以处理数组。
alert(data[0][title] )-----就相当于alert('你好‘)
php解析json数据
json_encode
对中文的处理是有问题的:
不能处理GBK编码,所有的GBK编码都会替换成空字符;
utf8编码的中文被编码成unicode编码,相当于javascript的escape函数
处理的结果。
为了能正确使用json,首先我们就应该在编码上采用utf8编码,然后再对
json_encode的返回结果稍加处理就可以得到正确的结果了。
即需要加:原始数据$json=iconv("GBK","UTF-8",$json);
json_decode之后需要显示或使用时,再转回来
echo iconv("UTF-8","GBK",$decode['data'][0]['APPName']);
PHP关于AJAX JSON如何设置GBK UTF8的问题,我接受不到数据库返回的中文,只能接受英文
最好把你要用到的文件编码都改成utf-8的,把数据库中表的和字段的编码都设置成utf-8的,那样就可以都获取到了