编码php和json_encode 中文解决方法

json_encode  时间:2021-01-26  阅读:()

php和json_encode中文解决方法json_encode中文解决方法json是一个很好的数据结构现在已经广泛用在网络数据传输上php 自身待了两个和json相关的函数json_encode 和json_decode

这两个函数的具体用法网上有很多相关的文章

本文主要介绍用json_encode时中文无法转换的解决方案本文假设文件所用的编码为gb2312

先写出所需的数组

<?php

$j son = array (

0 =>array (

) ,

1 =>array (

)

)

?>

如果直接用函数json_encode

<?phpecho json_encode($json) ;

?>

结果为

<?php

[ {"i d":"13", "name":nul l} , {"i d":"13", "name":nu l l} ]?>

可以看到汉字没有被转义 都为null

这是因为json仅仅转义encoding编码

故上面语句应该先转换编码

<?phpforeach ($ajax as $key=>$val)

{

$ajax[$key] ['name' ] =urlencode($val['name' ] ) ;

}echo json_encode($json) ;

?>

客户端js代码

<script type="text/javascript">function getsort(obj)

{

$.ajax(

{typ e : "GET",url : "<?=$this->baseUrl?>/index/getajax",data :,success : function(json)

{var json=eval(json) ;var html = '<select>' ;

$. each(json, function(k)

{html = '<option value="'json[k] [' id' ] ' ">' decodeURI(json[k] ['name' ] )

' </option>' ;

}) ;html ="</select>";

$('#sort' ) .html(html) ;

}

}

)

}

</script>

用上面的代码js会报错说编码不符合标准

原因是因为js中decodeURI仅仅支持utf8转码所以php

代码应该为下面的代码

<?phpforeach ($ajax as $key=>$val)

{

$ajax[$key] ['name' ] =urlencode(iconv('gb2312' , 'utf-8' ,$val['name' ] )) ;}echo json_encode($json) ;

?>

MineServer:洛杉矶CN2 GIA VPS/512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季

mineserver怎么样?mineserver是一家国人商家,主要提供香港CN2 KVM VPS、香港CMI KVM VPS、日本CN2 KVM VPS、洛杉矶cn2 gia端口转发等服务,之前介绍过几次,最近比较活跃。这家新推出了洛杉矶CN2 GIA VPS,512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季,并且进行了带宽升级,同时IP更改为美国IP。点击...

无视CC攻击CDN ,DDOS打不死高防CDN,免备案CDN,月付58元起

快快CDN主营业务为海外服务器无须备案,高防CDN,防劫持CDN,香港服务器,美国服务器,加速CDN,是一家综合性的主机服务商。美国高防服务器,1800DDOS防御,单机1800G DDOS防御,大陆直链 cn2线路,线路友好。快快CDN全球安全防护平台是一款集 DDOS 清洗、CC 指纹识别、WAF 防护为一体的外加全球加速的超强安全加速网络,为您的各类型业务保驾护航加速前进!价格都非常给力,需...

VirMach:$7.2/年KVM-美元512MB/$7.2/年MB多个机房个机房可选_双线服务器租赁

Virmach对资源限制比较严格,建议查看TOS,自己做好限制,优点是稳定。 vCPU 内存 空间 流量 带宽 IPv4 价格 购买 1 512MB 15GB SSD 500GB 1Gbps 1 $7/VirMach:$7/年/512MB内存/15GB SSD空间/500GB流量/1Gbps端口/KVM/洛杉矶/西雅图/芝加哥/纽约等 发布于 5个月前 (01-05) VirMach,美国老牌、稳...

json_encode为你推荐
免费个人网站制作如何制作个人网站?要钱吗?租车平台哪个好想网上租车,选什么平台好?输入法哪个好用五笔输入法哪个最好用电脑管家和360哪个好电脑管家和360卫士哪个好?手机浏览器哪个好目前手机浏览器哪个最好英语词典哪个好英语词典哪个好加速器哪个好加速器哪个好用?尼康和佳能单反哪个好入门的单反相机 佳能和尼康哪个好?手机炒股软件哪个好什么手机炒股软件好用,你们都用哪个电信10000宽带测速电信宽带最多有几兆的网速?
厦门虚拟主机 上海域名注册 高防服务器租用 重庆vps租用 申请免费域名 安云加速器 bluehost 174.127.195.202 双12活动 轻博 debian6 免费博客空间 500m空间 京东商城双十一活动 美国在线代理服务器 免费智能解析 如何安装服务器系统 腾讯网盘 1美元 hostease 更多