关于json中文编码问题

假设当前数组为:$array = array("1"=>"甲","2"=>"乙","3"=>"丙","4"=>"丁");

直接通过json_encode($array)将数组转为JSON对象后,通过HTTP请求发送出去,对方接收到的JSON对象的中文会显示为类似“\u5929”的unicode编码,这是因为json_encode不支持对中文字符的转义

解决方案为:先用urlencode()编码中文字符,再用json_encode()将数组转为json对象,再调用urldecode()进行解码,即可发送中文字符

具体代码如下:

$array = array("1"=>urlencode("甲"),"2"=>urlencode("乙"),"3"=>urlencode("丙"),"4"=>urlencode("丁")); 

$json = json_encode($array);
echo urldecode($json);die;

好,这样返回到客户端的数据中的中文字符就可以被解析了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值