当前位置:首页 > 电脑知识 > 正文内容

干货分享(php输出json中文乱码)json数据中文乱码怎么办,解决 php json中文乱码的问题,解决 php json中文乱码的问题,

sauo3年前 (2022-09-17)电脑知识182

php输出使用json_encode函数生成的json数据的时候,发现数据中的中文被转义成了unicode编码,如果使用ajax请求的json数据还好一点,浏览器会自动将unicode编码转义回来,但如果直接输出到浏览器上,那就会直接输出 unicode 编码,影响阅读体验。

解决php json_encode函数中文被转义的方法

这篇博文不考虑页面编码的问题,只从 json_encode 函数上来解决中文被 unicode 编码的问题,大家可以做个参考。

方法1:

此方法适用于php版本大于5.4情况下,如果php版本低于5.4可参考方法2

设置 json_encode 第二个参数为 JSON_UNESCAPED_UNICODE,则 json_encode 输入带的中文的数据时,中文不会被编码

例:

PHP
//feiniaomy.com 飞鸟慕鱼博客 $arr = array(code => success,msg => 这里是一个提示的内容); echo json_encode($arr); //输出的JSON: {"code":"success","msg":"\u8fd9\u91cc\u662f\u4e00\u4e2a\u63d0\u793a\u7684\u5185\u5bb9"} echo json_encode($arr,JSON_UNESCAPED_UNICODE); // 将第二个参数设置为:JSON_UNESCAPED_UNICODE //输出的JSON:{"code":"success","msg":"这里是一个提示的内容"}复制

方法2:

低于 5.4 版本的php中,json_encode 函数的第二个参数不起作用,则需要自己定义函数来实现不转义汉字的方法。

例:

PHP
$arr = array(Name => 墨初,Host => http://feiniaomy.com); //需要判断一个php的版本 if(version_compare(PHP_VERSION,5.4.0,<)) { foreach($arr as $key => $value){ $jsonstr[$key] = urlencode($value); } echo urldecode(json_encode($jsonstr)); }else{ echo json_encode($arr); }复制

本文链接:http://blog.sauo.top/?id=279 感谢分享!

分享到:

扫描二维码推送至手机访问。

版权声明:本文由冬眠先生个人博客发布,如需转载请注明出处。

本文链接:http://blog.sauo.top/?id=279

分享给朋友:

“干货分享(php输出json中文乱码)json数据中文乱码怎么办,解决 php json中文乱码的问题,解决 php json中文乱码的问题,” 的相关文章

新鲜出炉(ubuntu系统与centos系统区别)ubuntu还是centos,centos系统与ubuntu系统的区分,centos系统与ubuntu系统的区分,

免费领取腾讯云服务器! Linux的发行版有很多,而我们经常使用的为centos与ubuntu,下面这篇博文就说说这两个系统的发源与区别。 CentOS CentOS(Community Enterprise Operati...

全程干货(查看php是否启动)查看php是否支持rar解压,查看php是ts版本还是nts版本的方法,查看php是ts版本还是nts版本的方法,

全程干货(查看php是否启动)查看php是否支持rar解压,查看php是ts版本还是nts版本的方法,查看php是ts版本还是nts版本的方法,

免费领取腾讯云服务器! 今天有用户来询问php的ts版本与php的nts版本的区别是什么,怎么去查看自己安装的php服务是ts版本还是nts版本,下面博文就来详细的说一下。 php ts版本与nts版本的区别 php官方提供...

没想到(imagettftext函数)imagettftext函数支持的编码类型,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,imagettftext(): any2eucjp(): invalid code in input string 错误解决方法,

免费领取腾讯云服务器! 最近在研究关于php生成图片的东西,发现了 imagettftext() 函数中一个不是错误的错误,具体的错误情况如下所示。 错误代码:...

速看(mac txt文件怎样新建)mac新建一个txt文件,Mac 新建TXT文件的方法,Mac 新建TXT文件的方法,

速看(mac txt文件怎样新建)mac新建一个txt文件,Mac 新建TXT文件的方法,Mac 新建TXT文件的方法,

免费领取腾讯云服务器! 有个刚用mac电脑的同事来问了一个很基础的问题,如何在mac电脑上创建txt纯文本文件,就告诉他了一种不借助第三方软件的方法,下面就来分享一下。...

深度揭秘(用css美化html页面)html字体美化,CSS美化html文件上传按钮的方法,CSS美化html文件上传按钮的方法,

深度揭秘(用css美化html页面)html字体美化,CSS美化html文件上传按钮的方法,CSS美化html文件上传按钮的方法,

免费领取腾讯云服务器! 写了一个带有表单的html页面,发现原生的 input 文件上传输入框样式太丑了,就琢磨着自己写个美化的样式,下面就是 html input 文件上传样的美化方法,单纯的只用CSS实现,很简单的。 CSS 美化inp...

奔走相告(js判断上传文件大小)java获取上传文件大小,js获取上传文件类型以及大小的方法,js获取上传文件类型以及大小的方法,

免费领取腾讯云服务器! 前端web上传文件时,需要在上传之前判断一下文件的类型以及文件的大小,HTML为前端的标记语言是无法做到这一点,只能使用javascript 动态脚本代码来实现。 js获取上传文件大小的方法 示例代码...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。