基于php解决json_encode中文UNICODE转码问题


Posted in PHP onNovember 10, 2020

用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式,如果想汉字不进行转码,这里提供三种方法

1.升级PHP,在PHP5.4, 这个问题终于得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE, 故名思议, 就是说, Json不要编码Unicode.

<?php
echo json_encode("中文", JSON_UNESCAPED_UNICODE);
//"中文"

2.把汉字先urlencode然后再使用json_encode,json_encode之后再次使用urldecode来解码,这样编码出来的json数组中的汉字就不会出现unicode编码了。

$array = array(
'test'=>urlencode("我是测试")
);
$array = json_encode($array);
echo urldecode($array);
//{"test":"我是测试"}

3.对unicode码再进行解码,解码函数如下:

function decodeUnicode($str)
{
  return preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
    create_function(
      '$matches',
      'return mb_convert_encoding(pack("H*", $matches[1]), "UTF-8", "UCS-2BE");'
    ),
    $str);
}

4.例子

$arr = array('name1':"中文",'name2':'abc12');
$jsonstr = decodeUnicode(json_encode($arr));

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php与XML、XSLT、Mysql的结合运用实现代码
Nov 19 PHP
PHP中break及continue两个流程控制指令区别分析
Apr 18 PHP
php重定向的三种方法分享
Feb 22 PHP
php中引用符号(&amp;)的使用详解
Nov 13 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
Apr 02 PHP
PHP编译安装中遇到的两个错误和解决方法
Aug 20 PHP
关于URL最大长度限制的相关资料查证
Dec 23 PHP
THINKPHP内容分页代码分享
Jan 14 PHP
PHP中的Trait 特性及作用
Apr 03 PHP
Yii视图CGridView实现操作按钮定义地址示例
Jul 14 PHP
PHP利用Socket获取网站的SSL证书与公钥
Jun 18 PHP
PhpStorm配置Xdebug调试的方法步骤
Feb 02 PHP
ThinkPHP5分页paginate代码实例解析
Nov 10 #PHP
关于PHP求解三数之和问题详析
Nov 09 #PHP
PHP中isset、empty的用法与区别示例详解
Nov 05 #PHP
PHP后门隐藏的一些技巧总结
Nov 04 #PHP
phpstudy2020搭建站点的实现示例
Oct 30 #PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 #PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
Oct 30 #PHP
You might like
世界上第一台立体声收音机
2021/03/01 无线电
Laravel框架使用Seeder实现自动填充数据功能
2018/06/13 PHP
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
jQuery 页面 Mask实现代码
2010/01/09 Javascript
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
Jquery ajax执行顺序 返回自定义错误信息(实例讲解)
2013/11/06 Javascript
javascript 实现字符串反转的三种方法
2013/11/23 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
2013/12/27 Javascript
jQuery拖动div、移动div、弹出层实现原理及示例
2014/04/08 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
Jquery 效果使用详解
2015/11/23 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
jQuery基本过滤选择器用法示例
2016/09/09 Javascript
Jquery鼠标放上去显示全名的实现方法
2017/02/06 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
vue之将echart封装为组件
2018/06/02 Javascript
vue解决使用$http获取数据时报错的问题
2019/10/30 Javascript
浅谈vue项目,访问路径#号的问题
2020/08/14 Javascript
Python实现冒泡排序的简单应用示例
2017/12/11 Python
python使用pycharm环境调用opencv库
2018/02/11 Python
pandas 层次化索引的实现方法
2019/07/06 Python
Python列表(list)所有元素的同一操作解析
2019/08/01 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
Django框架 querySet功能解析
2019/09/04 Python
python ffmpeg任意提取视频帧的方法
2020/02/21 Python
利用CSS的Sass预处理器(框架)来制作居中效果
2016/03/10 HTML / CSS
StubHub巴西:购买和出售您的门票
2016/07/22 全球购物
数控技术专业毕业自荐书范文
2014/02/05 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
夫妻房产协议书的格式
2014/10/11 职场文书
骨干教师申报材料
2014/12/17 职场文书
学生保证书格式
2015/02/27 职场文书
工会积极分子个人总结
2015/03/03 职场文书
详解pytorch创建tensor函数
2022/03/22 Python