php 汉字处理 json,PHP的Json中文处理解决方案

本文讲述了PHP的Json中文处理解决方案。分享给大家供大家参考,具体如下:

Json是现在被广泛使用的用于传递字符串的格式,相比xml更显得简单易懂以及更方便操作,php下就俩个函数,json_encode() AND json_deconde()。不过json对中文的支持并不是很好,如果使用json_encode()处理如数组,数组中若存在中文,则会作空白处理。

解决中文的一种方法就是先将中文转换为另一种编码格式,然后再使用json_encode(),最后再用解码把json串进行解码。还有一种方式就在php新版本中得到了解决,在下面的代码为展示。

以下为代码示例

header("Content-type:text/html;charset=utf-8");

$arrayName = array('city' => '广东','goods'=>'cookies' );

$arr = json_encode($arrayName);

echo $arr."";

var_dump(json_decode($arr));

echo "";

echo urldecode(json_encode(ch_json($arrayName)))."";

/*

需要php版本在5.4以上

echo json_encode($arrayName,JSON_UNESCAPED_UNICODE);

*/

function ch_json($arr){

if(is_array($arr)){

foreach ($arr as $key => $value) {

$arr[urlencode($key)] = ch_json($value);

}

}else{

return urlencode($arr);

}

return $arr;

}

?>

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

希望本文所述对大家PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值