PHP的Json中文处理解决方案


Posted in PHP onSeptember 29, 2016

本文讲述了PHP的Json中文处理解决方案。分享给大家供大家参考,具体如下:

Json是现在被广泛使用的用于传递字符串的格式,相比xml更显得简单易懂以及更方便操作,php下就俩个函数,json_encode() AND json_deconde()。不过json对中文的支持并不是很好,如果使用json_encode()处理如数组,数组中若存在中文,则会作空白处理。

解决中文的一种方法就是先将中文转换为另一种编码格式,然后再使用json_encode(),最后再用解码把json串进行解码。还有一种方式就在php新版本中得到了解决,在下面的代码为展示。

以下为代码示例

<?php
  header("Content-type:text/html;charset=utf-8");
  $arrayName = array('city' => '广东','goods'=>'cookies' );
  $arr = json_encode($arrayName);
  echo $arr."</br>";
  var_dump(json_decode($arr));
  echo "</br>";
  echo urldecode(json_encode(ch_json($arrayName)))."</br>";
/*
  需要php版本在5.4以上
  echo json_encode($arrayName,JSON_UNESCAPED_UNICODE);
*/
  function ch_json($arr){
    if(is_array($arr)){
      foreach ($arr as $key => $value) {
        $arr[urlencode($key)] = ch_json($value);
      }
    }else{
      return urlencode($arr);
    }
    return $arr;
  }
?>
PHP 相关文章推荐
php在线打包程序源码
Jul 27 PHP
PHP正则的Unknown Modifier错误解决方法
Mar 02 PHP
DedeCMS 核心类TypeLink.class.php摘要笔记
Apr 07 PHP
php 数组的指针操作实现代码
Feb 08 PHP
php 对输入信息的进行安全过滤的函数代码
Jun 29 PHP
如何用php获取程序执行的时间
Jun 09 PHP
PHP 下载文件时自动添加bom头的方法实例
Jan 10 PHP
php实现的常见排序算法汇总
Sep 08 PHP
php中get_object_vars()方法用法实例
Feb 08 PHP
PHP 应用容器化以及部署方法
Feb 12 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 PHP
PHP代码加密的方法总结
Mar 13 PHP
PHP二分查找算法示例【递归与非递归方法】
Sep 29 #PHP
PHP快速排序quicksort实例详解
Sep 28 #PHP
PHP实现QQ快速登录的方法
Sep 28 #PHP
PHP自定义错误用法示例
Sep 28 #PHP
PHP构造函数与析构函数用法示例
Sep 28 #PHP
PHP设计模式之工厂模式与单例模式
Sep 28 #PHP
PHP类相关知识点实例总结
Sep 28 #PHP
You might like
探讨多键值cookie(php中cookie存取数组)的详解
2013/06/06 PHP
php5.3 goto函数介绍和示例
2014/03/21 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
php将数组存储为文本文件方法汇总
2015/10/28 PHP
微信公众号开发客服接口实例代码
2016/10/21 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
JS对象转换为Jquery对象示例
2014/01/26 Javascript
jQuery Ajax File Upload实例源码
2016/12/12 Javascript
微信小程序访问node.js接口服务器搭建教程
2017/04/25 Javascript
深入浅出es6模板字符串
2017/08/26 Javascript
JS关于刷新页面的相关总结
2018/05/09 Javascript
Nuxt.js之自动路由原理的实现方法
2018/11/21 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
vue-cli 3.x配置跨域代理的实现方法
2019/04/12 Javascript
Vue路由模块化配置的完整步骤
2019/08/14 Javascript
Python异常学习笔记
2015/02/03 Python
Django CBV类的用法详解
2019/07/26 Python
python sorted方法和列表使用解析
2019/11/18 Python
django模型动态修改参数,增加 filter 字段的方式
2020/03/16 Python
django项目中新增app的2种实现方法
2020/04/01 Python
python中JWT用户认证的实现
2020/05/18 Python
Matplotlib 绘制饼图解决文字重叠的方法
2020/07/24 Python
Python+Opencv实现把图片、视频互转的示例
2020/12/17 Python
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
婴儿鞋,独特的婴儿服装和配件:Zutano
2018/11/03 全球购物
教育课题研究自我鉴定范文
2013/12/28 职场文书
竞选学习委员演讲稿
2014/04/28 职场文书
运动会跳远广播稿5篇
2014/09/17 职场文书
国际贸易实训报告
2014/11/05 职场文书
就业意向书范本
2015/05/11 职场文书
小学德育工作总结2015
2015/05/12 职场文书
房屋质量投诉书
2015/07/02 职场文书
IDEA使用SpringAssistant插件创建SpringCloud项目
2021/06/23 Java/Android
Python anaconda安装库命令详解
2021/10/16 Python