PHP如何实现json_decode不转义中文

 更新时间:2017年7月6日 23:33  点击:1711
这篇文章主要介绍了PHP实现json_decode不转义中文的方法,结合实例形式具体分析了php5.4+及5.3版本针对json_decode实现不转义中文的具体操作技巧与相关注意事项,需要的朋友可以参考下

本文实例讲述了PHP实现json_decode不转义中文的方法。分享给大家供大家参考,具体如下:

默认情况下PHP的 json_decode 方法会把特殊字符进行转义,还会把中文转为Unicode编码形式。

这使得数据库查看文本变得很麻烦。所以我们需要限制对于中文的转义。

对于PHP5.4+版本,json_decode函数第二个参数,可以用来限制转义范围。

要限制中文,使用JSON_UNESCAPED_UNICODE参数。

json_encode($a, JSON_UNESCAPED_UNICODE);

对于PHP5.3版本,可以先把ASCII 127以上的字符转换为HTML数值,这样避免被json_decode函数转码:

functionmy_json_encode($arr)

{

    //convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding

    array_walk_recursive($arr,function(&$item,$key) {if(is_string($item))$item= mb_encode_numericentity($item,array(0x80, 0xffff, 0, 0xffff),'UTF-8'); });

    returnmb_decode_numericentity(json_encode($arr),array(0x80, 0xffff, 0, 0xffff),'UTF-8');

}

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

C语言风格/HTML/CSS/json代码格式化美化工具:

http://tools.jb51.net/code/ccode_html_css_json

 

希望本文所述对大家PHP程序设计有所帮助。

本文介绍了php输出全部gb2312编码内的汉字方法,非常实用,有兴趣的同学可以参考一下

php输出全部gb2312编码内的汉字,$area表示分区,$pos表示分区内所在位置。

 

 代码如下复制代码

<?php

$fp=fopen('t.txt','a');

for($area= 0xb0;$area<= 0xf7;$area++)

  for($pos= 0xa1;$pos<= 0xfe;$pos++)

    fwrite($fp, pack('CC',$area,$pos));

fclose($fp);

?>

 

本文介绍了php获取网站根目录物理路径的几种方法,非常实用,有兴趣的同学快来看看吧

在PHP中获取网站根目录物理路径。

在php程序开发中经常需要获取当前网站的目录,我们可以通过常量定义获取站点根目录物理路径,方便在程序中使用。

下面介绍几种常用的获取网站根目录的方法。

php获取网站根目录方法一:

<?php

define("WWWROOT",str_ireplace(str_replace("/","\\",$_SERVER['PHP_SELF']),'',__FILE__)."\\");

echoWWWROOT ;

?>

php获取网站根目录方法二:

<?php

define('WWW_PATH',str_replace('\\','/',realpath(dirname(__FILE__).'/../')));//定义站点目录

?>

php获取网站根目录方法三:

$_SERVER['DOCUMENT_ROOT'] //当前运行脚本所在的文档根目录。在服务器配置文件中定义。

本文介绍了PHP获取路径和目录的方法总结【必看篇】,非常实用,有兴趣的同学快来看看吧

PHP获取目录和的方法通过魔术变量;通过超级全局变量;通过相关函数等等:

<?php

 

/**

 

* PHP获取路径或目录实现

 

*/

 

 

 

//魔术变量,获取当前文件的绝对路径

 

echo"__FILE__: ========> ".__FILE__;

 

echo'<br/>';

 

 

 

//魔术变量,获取当前脚本的目录

 

echo"__DIR__: ========> ".__DIR__;

 

echo'<br/>';

 

 

 

//dirname返回路径的目录部分,dirname(__FILE__)相当于__DIR__

 

echo"dirname(__FILE__): ========> ".dirname(__FILE__);

 

echo'<br/>';

 

 

 

//$_SERVER['PHP_SELF']和$_SERVER['SCRIPT_NAME']的结果一般相同,他们都是获取当前脚本的文件名

 

//只有当php以cgi方式运行时有区别,但是现在几乎找不到以cgi方式运行php了

 

echo'$_SERVER["PHP_SELF"]: ========> '.$_SERVER['PHP_SELF'];

 

echo'<br/>';

 

 

 

echo'$_SERVER["SCRIPT_NAME"]: ========> '.$_SERVER['SCRIPT_NAME'];

 

echo'<br/>';

 

 

 

//当前执行脚本的绝对路径。记住,在CLI方式运行php是获取不到的

 

echo'$_SERVER["SCRIPT_FILENAME"]: ========> '.$_SERVER['SCRIPT_FILENAME'];

 

echo'<br/>';

 

 

 

//当前运行脚本所在的文档根目录。在服务器配置文件中定义。

 

echo'$_SERVER["DOCUMENT_ROOT"]: ========> '.$_SERVER['DOCUMENT_ROOT'];

 

echo'<br>';

 

 

 

//getcwd()返回当前工作目录

 

echo"getcwd(): ========> ".getcwd();

 

echo'<br>';

 

 

 

echo'<br>';

 

echo"本文来自一聚教程";

打印结果如下【我的根目录是:G:/web】:

[!--infotagslink--]

相关文章

  • js URLdecode()与urlencode方法支持中文解码

    下面来介绍在js中来利用urlencode对中文编码与接受到数据后利用URLdecode()对编码进行解码,有需要学习的机友可参考参考。 代码如下 复制代码 ...2016-09-20
  • php语言实现redis的客户端

    php语言实现redis的客户端与服务端有一些区别了因为前面介绍过服务端了这里我们来介绍客户端吧,希望文章对各位有帮助。 为了更好的了解redis协议,我们用php来实现...2016-11-25
  • jQuery+jRange实现滑动选取数值范围特效

    有时我们在页面上需要选择数值范围,如购物时选取价格区间,购买主机时自主选取CPU,内存大小配置等,使用直观的滑块条直接选取想要的数值大小即可,无需手动输入数值,操作简单又方便。HTML首先载入jQuery库文件以及jRange相关...2015-03-15
  • JS实现的简洁纵向滑动菜单(滑动门)效果

    本文实例讲述了JS实现的简洁纵向滑动菜单(滑动门)效果。分享给大家供大家参考,具体如下:这是一款纵向布局的CSS+JavaScript滑动门代码,相当简洁的手法来实现,如果对颜色不满意,你可以试着自己修改CSS代码,这个滑动门将每一...2015-10-21
  • jQuery+slidereveal实现的面板滑动侧边展出效果

    我们借助一款jQuery插件:slidereveal.js,可以使用它控制面板左右侧滑出与隐藏等效果,项目地址:https://github.com/nnattawat/slideReveal。如何使用首先在页面中加载jquery库文件和slidereveal.js插件。复制代码 代码如...2015-03-15
  • 关于Mysql中文乱码问题该如何解决(乱码问题完美解决方案)

    最近两天做项目总是被乱码问题困扰着,这不刚把mysql中文乱码问题解决了,下面小编把我的解决方案分享给大家,供大家参考,也方便以后自己查阅。首先:用show variables like “%colla%”;show varables like “%char%”;这两条...2015-11-24
  • PHP+jQuery翻板抽奖功能实现

    翻板抽奖的实现流程:前端页面提供6个方块,用数字1-6依次表示6个不同的方块,当抽奖者点击6个方块中的某一块时,方块翻转到背面,显示抽奖中奖信息。看似简单的一个操作过程,却包含着WEB技术的很多知识面,所以本文的读者应该熟...2015-10-21
  • C#读取中文文件出现乱码的解决方法

    这篇文章主要介绍了C#读取中文文件出现乱码的解决方法,涉及C#中文编码的操作技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SQLMAP结合Meterpreter实现注入渗透返回shell

    sqlmap 是一个自动SQL 射入工具。它是可胜任执行一个广泛的数据库管理系统后端指印, 检索遥远的DBMS 数据库等,下面我们来看一个学习例子。 自己搭建一个PHP+MYSQ...2016-11-25
  • Mysql在debian系统中不能插入中文的终极解决方案

    在debian环境下,彻底解决mysql无法插入和显示中文的问题Linux下Mysql插入中文显示乱码解决方案mysql -uroot -p 回车输入密码进入mysql查看状态如下:默认的是客户端和服务器都用了latin1,所以会乱码。解决方案:mysql>use...2013-10-04
  • linux mint 下mysql中文支持问题

    一.mysql默认不支持中文,它的server和db默认是latin1编码.所以我们要将其改变为utf-8编码,因为utf-8包含了地球上大部分语言的二进制编码 1.关闭mysql服务 sudo /etc/init.d/mysql stop 2.修改mysql配置文件 mysql配...2015-10-21
  • Windows服务器MySQL中文乱码的解决方法

    我们自己鼓捣mysql时,总免不了会遇到这个问题:插入中文字符出现乱码,虽然这是运维先给配好的环境,但是在自己机子上玩的时候咧,总得知道个一二吧,不然以后如何优雅的吹牛B。...2015-03-15
  • php怎么用拼音 简单的php中文转拼音的实现代码

    小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06
  • PHP实现今天是星期几的几种写法

    复制代码 代码如下: // 第一种写法 $da = date("w"); if( $da == "1" ){ echo "今天是星期一"; }else if( $da == "2" ){ echo "今天是星期二"; }else if( $da == "3" ){ echo "今天是星期三"; }else if( $da == "4"...2013-10-04
  • Java连接数据库oracle中文乱码解决方案

    这篇文章主要介绍了Java连接数据库oracle中文乱码解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-05-16
  • 原生js实现fadein 和 fadeout淡入淡出效果

    js里面设置DOM节点透明度的函数属性:filter= "alpha(opacity=" + value+ ")"(兼容ie)和opacity=value/100(兼容FF和GG)。 先来看看设置透明度的兼容性代码: 复制代码 代码如下: function setOpacity(ele, opacity) { if (...2014-06-07
  • Android中用HttpClient实现Http请求通信

    本文我们需要解决的问题是如何实现Http请求来实现通信,解决Android 2.3 版本以后无法使用Http请求问题,下面请看正文。 Android开发中使用HttpClient来开发Http程序...2016-09-20
  • FlashFXP连接站点中文显示乱码解决办法

    FlashFXP是一款常用的服务器客户连接软件了,我们可以通过FlashFXP来上传或下载文件,但有一些朋友使用FlashFXP时碰到中文目录或文件名乱码问题,那么要如何来解决呢?具体就...2016-10-10
  • mysql存储过程实现split示例

    复制代码 代码如下:call PROCEDURE_split('分享,代码,片段',',');select * from splittable;复制代码 代码如下:drop PROCEDURE if exists procedure_split;CREATE PROCEDURE `procedure_split`( inputstring varc...2014-05-31
  • php中把unicode编码转化为中文

    小编在网上看到最多的就是汉字转换unicode编码了,今天我们看到一个反过来的操作就是把unicode转换成中文了,下面一起来看看 这两天帮别人开发微信平台好友板块,存...2016-11-25