php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案


Posted in PHP onMay 31, 2016

PHP5.4才支持JSON_UNESCAPED_UNICODE这个参数,此参数是让中文字符在json_encode的时候不用转义,减少数据传输量。但在PHP5.3中,就得自己写个函数来实现,以下就是解决方法:

/**
* 对变量进行 JSON 编码
* @param mixed value 待编码的 value ,除了resource 类型之外,可以为任何数据类型,该函数只能接受 UTF-8 编码的数据
* @return string 返回 value 值的 JSON 形式
*/
function json_encode_ex($value)
{
 if (version_compare(PHP_VERSION,'5.4.0','<'))
 {
  $str = json_encode($value);
  $str = preg_replace_callback(
         "#\\\u([0-9a-f]{4})#i",
         function($matchs)
         {
           return iconv('UCS-2BE', 'UTF-8', pack('H4', $matchs[1]));
         },
          $str
         );
  return $str;
 }
 else
 {
  return json_encode($value, JSON_UNESCAPED_UNICODE);
 }
}

判断PHP的版本,如果低于5.4则使用自定义函数来实现,如果是5.4及以上版本则使用JSON_UNESCAPED_UNICODE。

以上就是php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案 ,希望能给大家一个参考,了解更多PHP的语法,大家可以关注《PHP5在线手册》,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Excel数据导入Mysql数据库的实现代码
Jun 05 PHP
从Web查询数据库之PHP与MySQL篇
Sep 25 PHP
需要注意的几个PHP漏洞小结
Feb 05 PHP
解析php中如何调用用户自定义函数
Aug 06 PHP
php输出xml必须header的解决方法
Oct 17 PHP
yii2.0之GridView自定义按钮和链接用法
Dec 15 PHP
PHP基于MySQL数据库实现对象持久层的方法
Jun 17 PHP
ThinkPHP路由详解
Jul 27 PHP
CI框架中类的自动加载问题分析
Nov 21 PHP
PHP运用foreach神奇的转换数组(实例讲解)
Feb 01 PHP
PHP 应用容器化以及部署方法
Feb 12 PHP
PHP数组访问常用方法解析
Sep 05 PHP
让你的PHP7更快之Hugepage用法分析
May 31 #PHP
PHP表单数据写入MySQL数据库的代码
May 31 #PHP
PHP将页面中点击数量高的链接进行高亮显示的方法
May 30 #PHP
PHP如何实现跨域
May 30 #PHP
php while循环控制的简单实例
May 30 #PHP
Yii2中如何使用modal弹窗(基本使用)
May 30 #PHP
[原创]php求圆周率的简单实现方法
May 30 #PHP
You might like
php4的session功能评述(三)
2006/10/09 PHP
PHP之COOKIE支持详解
2010/09/20 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
2017/02/10 PHP
javascript简单实现表格行间隔显示颜色并高亮显示
2013/11/29 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
关闭时刷新父窗口两种方法
2014/05/07 Javascript
深入分析JQuery和JavaScript的异同
2014/10/23 Javascript
Bootstrap 组件之按钮(二)
2016/05/11 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
Angular2入门教程之模块和组件详解
2017/05/28 Javascript
关于使用js算总价的问题
2017/06/23 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
JS从非数组对象转数组的方法小结
2018/03/26 Javascript
详解Koa中更方便简单发送响应的方式
2018/07/20 Javascript
React 条件渲染最佳实践小结(7种)
2020/09/27 Javascript
解决antd datepicker 获取时间默认少8个小时的问题
2020/10/29 Javascript
vue3.0中使用element的完整步骤
2021/03/04 Vue.js
python学习之matplotlib绘制散点图实例
2017/12/09 Python
numpy数组广播的机制
2019/07/12 Python
Django 路由层URLconf的实现
2019/12/30 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
浅谈Python线程的同步互斥与死锁
2020/03/22 Python
基于python爬取有道翻译过程图解
2020/03/31 Python
解决jupyter notebook显示不全出现框框或者乱码问题
2020/04/09 Python
Python实现Word表格转成Excel表格的示例代码
2020/04/16 Python
HTML5 解决苹果手机不能自动播放音乐问题
2017/12/27 HTML / CSS
英国最大的宝石首饰超市:QP Jewellers
2018/09/23 全球购物
abstract class和interface有什么区别?
2012/01/03 面试题
大客户销售经理职责
2013/12/04 职场文书
大学生村官承诺书
2014/03/28 职场文书
促销活动总结范文
2014/04/30 职场文书
表彰大会策划方案
2014/05/13 职场文书
生物科学专业自荐书
2014/06/20 职场文书
名人演讲稿范文
2014/09/16 职场文书