解决PHP中json_encode()不支持中文的替代函数
json_encode()是PHP中将数组转换成JSON格式的函数,因为各种原因只要是中文就会乱码= =
找到了这么一个函数替代了原有的json_encode(),能很好地输出中文~
function ch_json_encode($data) { function ch_urlencode($data) {
if (is_array($data) || is_object($data)) {
foreach ($data as $k => $v) {
if (is_scalar($v)) {
if (is_array($data)) {
$data[$k] = urlencode($v);
} else if (is_object($data)) {
$data->$k = urlencode($v);
}
} else if (is_array($data)) {
$data[$k] = ch_urlencode($v); //递归调用该函数
} else if (is_object($data)) {
$data->$k = ch_urlencode($v);
}
}
}
return $data;
} $ret = ch_urlencode($data);
$ret = json_encode($ret);
return urldecode($ret);
}
解决PHP中json_encode()不支持中文的替代函数的更多相关文章
- 解决ubantu中sublime不支持中文的方法
更新然后将系统升级到最新版本,在linux终端输入 sudo apt-get update && sudo apt-get 在本地目录中克隆此repo: 如果你没有git的话就安 ...
- mac中matplotlib不支持中文的解决办法
参考:https://blog.csdn.net/kaizei_pao/article/details/80795377 首先查看matplotlib已加载的字体: import matplotlib ...
- 微信小程序------MD5加密(支持中文和不支持中文)和网络请求(get和post)
开发中常常遇到MD5加密,最近做小程序也用到了,简单总结了一下: 这要有两个加密文件,一个不支持中文,一个支持,所以你选择支持的来用就行了: 也随便说说小程序的get和post网络请求. 来看看效果图 ...
- 解决Docker中运行的MySQL中文乱码
docker exec -it mysql bash 如果没有安装vim,请参考 解决Docker容器中不能用vim编辑文件 vim /etc/mysql/mysql.conf.d/mysql.cnf ...
- 解决tomcat7中request会对中文重新编码,导致后台接收到为encode编码后参数问题
package xxx; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.ut ...
- 解决mac 中的myeclipse控制台中文乱码问题
http://www.myexception.cn/eclipse/1742588.html 解决 http://my.oschina.net/u/555006/blog/195013
- Docker中配置字符集支持中文
在Dockerfile中加入以下内容: ENV LANG en_US.UTF-8ENV LANGUAGE en_US:enENV LC_ALL en_US.UTF-8
- 让Linux中的Nginx支持中文文件名
原文:https://blog.csdn.net/soeben/article/details/79525964 首先你的服务器需要安装了UTF-8字符集在命令行里输入env|grep LANG如果显 ...
- Web jsp开发学习——终极解决jsp中request和response中文乱码的问题(加个过滤器)
中文乱码真的很烦人的.而且每次都要写,可麻烦了,而且有时候写了还不一定管用,所以我们可以试试过滤器 1.每个jsp头上当然要写上utf8啦 <%@ page language="jav ...
随机推荐
- JS GZIP压缩
GZIP压缩,GZIP解压需要用到 pako.js 文件:下载地址:https://download.csdn.net/download/qq_35713752/10627338 使用方法: JS压缩 ...
- libev 源码解析
一 libev简介 libev是一个轻量级的事件通知库,具备支持多种事件通知能力,通过对libev的源码的阅读,可以清楚了解事件通知实现内部机制. 二 核心数据结构 在libev中关键的数据结构是, ...
- jQuery之克隆事件--clone()与clone(true)区别
clone()与clone(true)同为克隆 clone()表示复制标签本身, clone(true)会将标签绑定的事件一起复制 来看案例: <!DOCTYPE html> <ht ...
- 博客C语言I作业11
一.本周教学内容&目标 第5章 函数 要求学生掌握各种类型函数的定义.调用和申明,熟悉变量的作用域.生存周期和存储类型. 二.本周作业头 这个作业属于哪个课程 c语言程序设计II 这个作业要求 ...
- 2019icpc西安邀请赛 J And And And (树形dp)
题目链接:https://nanti.jisuanke.com/t/39277 题意:给出一棵有边权的树,求所有简单路径包含异或和为0的简单路径的总数和. 思路: 首先,对于异或为0这一限制,我们通过 ...
- 2017Nowcoder Girl初赛重现赛 D(二进制枚举
链接:https://ac.nowcoder.com/acm/contest/315/D来源:牛客网 题目描述 妞妞参加完Google Girl Hackathon之后,打车回到了牛家庄. 妞妞需要支 ...
- composer设置autoload自己的代码
"autoload": { "psr-4": {"": ["App/base", "App/src/contr ...
- winform中如何使用timer控件实现欢迎(初始加载)窗口
第一步.新建窗体项目命名为:TestWelcomeFrm,如下图: 第二步.在新项目中,增加欢迎窗口,命名为WelFrm,整个项目目录如下: 第三步.修改program.cs中启动代码如下: WelF ...
- 输出单项链表中倒数第k个结点——牛客刷题
题目描述: 输入一个单向链表,输出该链表中倒数第k个结点 输入.输出描述: 输入说明:1.链表结点个数 2.链表结点的值3.输入k的值 输出说明:第k个结点指针 题目分析: 假设链表长度为n,倒数第k ...
- 大数据学习(2)- export、source(附带多个服务器一起启动服务器)
linux环境中, A=1这种命名方式,变量作用域为当前线程 export命令出的变量作用域是当前进程及其子进程. 可以通过source 脚本,将脚本里面的变量放在当前进程中 附带自己写的tomcat ...