/**
* 中文转换为JSON字符串
* @param $chinese_str 中文:可以包含中文字母数字
* @return string
*/
function json_encode($chinese_str)
{
$chinese_str = iconv('UTF-8', 'UCS-2', $chinese_str);
$len = strlen($chinese_str) - 1;
$str = '';
for ($i = 0; $i < $len; $i = $i + 2)
{
$c1 = $chinese_str[$i];
$c2 = $chinese_str[$i + 1];
$unicode1=ord($c1);
$unicode2=ord($c2);
if ($unicode1)
{ // 两个字节的文字
$unicode1='\u'.base_convert($unicode1, 10, 16);
$unicode2=base_convert($unicode2, 10, 16);
if(in_array($unicode2,array('a','b','c','d','e','f'))){
$unicode2='0'.$unicode2;
}
$str.=$unicode1.$unicode2;
}else{
$str.=$c2;
}
}
return $str;
} /**
* JSON字符串转换为中文
* @param $json_str JSON字符串
* @return string
*/
function json_decode($json_str)
{
// 转换编码,将JSON字符串转换成可以浏览的utf-8编码
$pattern = '/([\w]+)|(\\\u([\w]{4}))/i';
preg_match_all($pattern, $json_str, $matches);
$chinese_str = '';
if (!empty($matches))
{
$count=count($matches[0]);
for ($j = 0; $j < $count; $j++)
{
$str = $matches[0][$j];
if (strpos($str, '\\u') === 0)
{
$code = base_convert(substr($str, 2, 2), 16, 10);
$code2 = base_convert(substr($str, 4), 16, 10);
$c = chr($code).chr($code2);
$c = iconv('UCS-2', 'UTF-8', $c);
$chinese_str .= $c;
}
else
{
$chinese_str .= $str;
}
}
}
return $chinese_str;
}

  

PHP:JSON字符串转换为中文,中文转换为JSON字符串的更多相关文章

  1. c#将http调用返回额json中的有关中文的unicode转换为中文

    c#将http调用返回额json中的有关中文的unicode转换为中文 中文转Unicode:HttpUtility.UrlEncodeUnicode(string str);转换后中文格式:&quo ...

  2. 字符串json转换为xml xml转换json

    原文:字符串json转换为xml xml转换json // To convert an XML node contained in string xml into a JSON string XmlD ...

  3. 生成二维码 加密解密类 TABLE转换成实体、TABLE转换成实体集合(可转换成对象和值类型) COOKIE帮助类 数据类型转换 截取字符串 根据IP获取地点 生成随机字符 UNIX时间转换为DATETIME\DATETIME转换为UNIXTIME 是否包含中文 生成秘钥方式之一 计算某一年 某一周 的起始时间和结束时间

    生成二维码 /// <summary>/// 生成二维码/// </summary>public static class QRcodeUtils{private static ...

  4. toJSON() 方法,将 Date 对象转换为字符串,并格式化为 JSON 数据格式。

    JavaScript toJSON() 方法 定义和用法 toJSON() 方法可以将 Date 对象转换为字符串,并格式化为 JSON 数据格式. JSON 数据用同样的格式就像x ISO-8601 ...

  5. 解决JSON.stringify()自动将中文转译成unicode的方法

    最近在工作中,发现在IE8下JSON.stringify()自动将中文转译为unicode编码,原本选择的中文字符,传到后台变为了unicode编码,即\u****的形式.查找资料后发现,与标准的JS ...

  6. php urlencode函数 (中文字符转换为十六进制)

    urlencode()函数原理就是首先把中文字符转换为十六进制,然后在每个字符前面加一个标识符%. urldecode()函数与urlencode()函数原理相反,用于解码已编码的 URL 字符串,其 ...

  7. python -m json.tool 中文乱码 Format JSON with python

    现在以 json 为数据传输格式的 RESTful 接口非常流行.为调试这样的接口,一个常用的办法是使用 curl 命令: curl http://somehost.com/some-restful- ...

  8. Thinkphp将中文年份转换为数字年份的问题

    今天遇到一个问题:想将中文年份转换为数字年份,例如:"二零一六"-->'2016'. 在网上搜了一下,没找到可以直接处理的函数(也许是我搜索信息的能力有限吧>_< ...

  9. 中文格式python 打印json格式的数据中文显示问题

    废话就不多说了,开始... 平日会有这么一个应用场景,会用python去处置json格式的web API,以“ip.taobao.com”的API为例,详情见http://ip.taobao.com/ ...

  10. python json库序列化支持中文

    import json d = {"name":"英雄无敌7"} res = json.dumps(d) # 打印res 会显示 {"name&quo ...

随机推荐

  1. CSS3动画库animate.css

    在线演示 本地下载

  2. tornado解析 第一篇

    一.tornado介绍 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 we ...

  3. UITableViewCell使用时注意事项

    1,注意使用重用机制(有利于提高效率) 2,做到通过改变模型去间接改变UI样式(做到永久改变,无论怎样拖动刷新,都不会恢复改变) 3,在通过传递模型给Cell控件布局时,记得完全覆盖(嗯,不好解释,主 ...

  4. Python的format函数

    Python的format函数 自python2.6开始,新增了一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串. 语法 它通过{}和:来代替%. 请看下面的示例,基本上总 ...

  5. 解决MySQL因不能创建 PID 导致无法启动的方法

    问题描述 MySQL 启动报错信息如下: ? 1 2 Starting mysqld (via systemctl):  Job for mysqld.service failed because t ...

  6. git checkout cannot stat permission denied

    https://stackoverflow.com/questions/5970879/git-rebase-error-cannot-stat-file-permission-denied 退出vi ...

  7. python爬取糗事百科段子

    初步爬取糗事百科第一页段子(发布人,发布内容,好笑数和评论数) #-*-coding:utf--*- import urllib import urllib2 import re page = url ...

  8. Ceilometer Polling Performance Improvement

    Ceilometer的数据采集agent会定期对nova/keystone/neutron/cinder等服务调用其API的获取信息,默认是20秒一次, # Polling interval for ...

  9. cms实例笔记(二)

    栏目分级: 一.首页 二.解决方案 (栏目) 1.栏目模型 名称: 新闻: 封面模板:cover.html (没有子栏目模型不会用到) 列表页模板:list.html 2.文档模型 名称:新闻 模板: ...

  10. Ubuntu18.04 升级python3后 安装pip3 后报错

    pip3 -VTraceback (most recent call last): File , in <module> from pip._internal import main Mo ...