默认情况下php的 json_decode 方法会把特殊字符进行转义,还会把中文转为Unicode编码形式。

这使得数据库查看文本变得很麻烦。所以我们需要限制对于中文的转义。

对于PHP5.4+版本,json_decode函数第二个参数,可以用来限制转义范围。

要限制中文,使用JSON_UNESCAPED_UNICODE参数。

json_encode($a, JSON_UNESCAPED_UNICODE);

对于PHP5.3版本,可以先把ASCII 127以上的字符转换为HTML数值,这样避免被json_decode函数转码

function my_json_encode($arr)

{

array_walk_recursive($arr, function (&$item, $key) { if (is_string($item)) $item = mb_encode_numericentity($item, array (0x80, 0xffff, 0, 0xffff), 'UTF-8'); });

return mb_decode_numericentity(json_encode($arr), array (0x80, 0xffff, 0, 0xffff), 'UTF-8');

}

在编码过程中、经常会用到json_encode来处理中文、但是、出现一个问题、中文都会被转码、变为” \u**** ”的格式、如何避免被转码、
1:PHP的版本为5.4以上;
echo json_encode( '中文' ); // "\u4e2d\u6587"
echo json_encode( '中文', JSON_UNESCAPED_UNICODE ); // "中文"
2:先把汉字urlencode转码、在json_encode; 然后urldecode解码;
echo $con = '中文'; // 中文
echo $con = urlencode( $con ); // %E4%B8%AD%E6%96%87"
echo $con = json_encode( $con ); // %E4%B8%AD%E6%96%87"
echo $con = urldecode( $con ); // "中文"

json_encode转义中文问题相关推荐

  1. php json存mysql斜杠_MySQL 存储php中json_encode格式中文问题及解决

    MySQL 存储php中json_encode格式信息  ,遇到中文时, 会变成一堆类似uxxxx信息. 1. 原因分析: 在存储到数据库时!MySQL 不会存储 unicode 字符: MySQL  ...

  2. php数组使用json_encode函数中文被编码成null的原因和解决办法

    大写的囧,提客户处理问题,前端的APP一直在叽叽咂咂,说收到的值是null,弄了半天原来是这个问题,记录下吧 json格式在开发中用的十分广泛.在php中json_encode函数可以直接将数组转成 ...

  3. php中文转化为英文,json转码_解决PHP的json_encode处理中文被转码为全英文的方法...

    摘要 腾兴网为您分享:解决PHP的json_encode处理中文被转码为全英文的方法,余额宝,视达网,千题库,汽修宝等软件知识,以及马上行动,芝麻手,叉叉mt,中微家校通,雷鸟邮件,我在找你,pads ...

  4. php 中文 encode,php 解决json_encode 时中文出现unicode编码

    您现在的位置是:网站首页>>PHP>>php php 解决json_encode 时中文出现unicode编码 发布时间:2018-09-28 09:30:49作者:wangj ...

  5. php json_encode不转义,php json_encode不转义中文汉字的方法

    php json_encode 函数在转义含有中文汉字的数据为json格试数据时,会将数据中的中文汉字转换成 unicode 格式的字符,如果我们要保留汉字原有的格式该如何做呢? json_encod ...

  6. PHP JSON_ENCODE 不转义中文汉字的方法

    iOS程序中不识别读取到的JSON数据中 \u开头的数据. PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 网上很多,但是其实都是错误的,正确的方法是在json_enc ...

  7. PHP json_encode不转义中文

    static public function test6() {//在数据库随便拿一条有中文的数据$user = DB::table('users')->select('name','compa ...

  8. json_encode 处理中文乱码

    $data="JSON中文";         $newData=iconv("GB2312","UTF-8//IGNORE",$data) ...

  9. php 输出json utf8,php json_encode utf-8中文问题

    以前碰到最多的是json_encode是gbk 编码时出现乱码,今天发现uft8也会出现中文乱码了,下面我们一起看问题如何解决吧. utf-8字符json_encode为变成转成utf16编码,也就是 ...

  10. php json_encode后乱码,PHP中json_encode后中文乱码的解决方案

    header("Content-Type:text/html;charset=utf-8;"); $arr = array ('Version_code'=>2,'Versi ...

最新文章

  1. java inner class,C# Inner Class vs. java 的inner class比较-JSP教程,Java技巧及代码
  2. 九大排序算法,你会几个?
  3. 自定义LeNet5,开启你的炼丹之路
  4. Mysql安装过程(linux:2.6.18-194.el5,Mysql:)
  5. 在构造器里调用可重写的方法有什么问题?
  6. 如何向开源软件贡献自己的力量
  7. 高级工计算机操作试题及答案,计算机系统操作高级工试题和答案[1]
  8. Linux svn服务器搭建
  9. SpringBoot配置参数绑定@ConfigurationProperties@Value
  10. Luogu1514 引水入城
  11. 一刀工具箱 - 古诗文查询
  12. Android | Tangram动态页面之路(七)硬核的Virtualview
  13. 浅谈几个“返利网”----所谓的网购省钱利器
  14. 互联网系统故障应急处理流程
  15. BIOS学习之Beyong Bios
  16. SAP那些事-职业篇-25-顾问的价值
  17. java 跳过法定节假日和双休
  18. linux中mtd动态加载,Linux 2.6.11 下 MTD驱动情景实例分析
  19. Collision Filtering(selective collisions) 碰撞过滤(选择性碰撞)
  20. [项目]——文件搜索工具Java-Everything

热门文章

  1. 【视频音效素材】火遍全网的2000款热门短视频搞笑剪辑素材+经典音效包素材来了
  2. C4 model技术架构图--context图
  3. vue常见面试题(附带答案) 超实用!!建议收藏!!
  4. 正则应用之--日期正则表达式
  5. FME官方软件快速下载
  6. ECharts 前端数据可视化
  7. mbedtls | 08 - ECDH秘钥协商算法的配置与使用
  8. .cpp文件转换为.exe文件过程(C++)
  9. 一文带你了解dfs和bfs算法
  10. YOLOV5 + 双目测距(python)