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 相关文章推荐
一个程序下载的管理程序(二)
Oct 09 PHP
关于php fread()使用技巧
Jan 22 PHP
PHP Socket 编程
Apr 09 PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
Nov 03 PHP
php+mysqli事务控制实现银行转账实例
Jan 29 PHP
PHP使用mysqldump命令导出数据库
Apr 14 PHP
PHP实现微信网页授权开发教程
Jan 19 PHP
Symfony2在Nginx下的配置方法图文教程
Feb 04 PHP
PHP编写登录验证码功能 附调用方法
May 19 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
Jan 24 PHP
PHP之多条件混合筛选功能的实现方法
Oct 09 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
PHP IE中下载附件问题解决方法
2014/01/07 PHP
ThinkPHP的常用配置选项汇总
2016/03/24 PHP
限制文本字节数js代码
2007/03/06 Javascript
发布BlueShow v1.0 图片浏览器(类似lightbox)blueshow.js 打包下载
2007/07/21 Javascript
一个可以随意添加多个序列的tag函数
2009/07/21 Javascript
javascript 短路法代码精简
2009/08/20 Javascript
jquery formValidator插件ajax验证 内容不做任何修改再离开提示错误的bug解决方法
2013/01/04 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
jquery操作checked属性以及disabled属性的多种方法
2014/06/20 Javascript
Javascript在IE和Firefox浏览器常见兼容性问题总结
2016/08/03 Javascript
浅谈Node.js轻量级Web框架Express4.x使用指南
2017/05/03 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
2017/09/13 Javascript
ES6 class类链式继承,实例化及react super(props)原理详解
2020/02/15 Javascript
基于JS实现table导出Excel并保留样式
2020/05/19 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
[01:48:04]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第一场 2月7日
2021/03/11 DOTA
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python实现单词拼写检查
2015/04/25 Python
Python对list列表结构中的值进行去重的方法总结
2016/05/07 Python
详解Python匿名函数(lambda函数)
2019/04/19 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
2019/12/10 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
python实现ping命令小程序
2020/12/28 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
浅谈HTML5新增及移除的元素
2016/06/27 HTML / CSS
你所在的项目是如何确定版本号的
2015/12/28 面试题
培训主管的岗位职责
2013/11/23 职场文书
宿舍使用违章电器检讨书
2014/01/12 职场文书
计算机大学生职业生涯规划书范文
2014/02/19 职场文书
村委会换届选举方案
2014/05/03 职场文书
老公保证书
2015/01/17 职场文书
2015年村党支部工作总结
2015/04/30 职场文书
2015中学教学工作总结
2015/07/22 职场文书
团结友爱主题班会
2015/08/13 职场文书