php数组转json中文乱码解决办法

为数组里的每个元素进行urlencode() 转码 后再用json_encode() 转为json即可, 解码使用json_decode()

示例:

foreach ( $result as $keys => $value ) //包含中文的二维数组$result转json,数组内部元素一一使用urlencode转换即可保证中文不乱码 { foreach($value as $key=>$column){ $testJSON[$keys][$key] = urlencode ( $column ); } } var_dump( json_encode ( $testJSON ));//转为json $result = urldecode ( json_encode ( $testJSON ) );//转回数组

原文地址:https://www.cnblogs.com/xiaogou/p/11655551.html

时间: 2024-10-10 21:13:04

php数组转json中文乱码解决办法的相关文章

php 打开csv文件转成数组。打开中文乱码 解决办法

代码如下 //csv 打开 转码, $filename 指的是 目标csv 路径 $file = fopen($filename,"r"); while(!feof($file)) { $excel_array[] = (fgetcsv($file)); } // 打开乱码 需要转码 $excel_array = eval('return ' . iconv('gbk', 'utf-8', var_export($excel_array, true)) . ';'); // 删除第一行

PHP中文乱码解决办法

一.         首先是PHP网页的编码 1.     php文件本身的编码与网页的编码应匹配 a.     如果欲使用gb2312编码,那么php要输出头:header("Content-Type: text/html; charset=gb2312"),静态页面添加<meta http-equiv="Content-Type" content="text/html; charset=gb2312">,所有文件的编码格式为ANS

navicat for mysql 显示中文乱码解决办法

navicat for mysql 显示中文乱码解决办法   最近遇到一个问题,用navicat for mysql 打开数据库时全都显示的是乱码(在用程序代码插入数据之前确保字符不是乱码),遇到问题就的寻求解决之道,百度了好长时间也没解决,网上那些解决办法都不 适合我的问题,网上的大多数解决方法是在navicat里右击一个连接,选择连接属性,切换到高级选项卡,去掉“使用mysql字符集”前的对勾,在编码 里选择utf-8,这种方法对于部分问题可能适合,但是我的乱码问题依然存在,于是乎我又将ut

Oracle导入中文乱码解决办法

Oracle导入中文乱码解决办法 一.确保各个客户端字符集的编码同服务器字符集编码一致 1-       确定sqlplus字符集编码,如果是windows设置环境变量. 2-       确保SecureCRT客户端的字符集为简体中文即可,不要设置为UTF-8,否则在连接oralce数据库时,中文都显示乱码,以免产生不必要的麻烦. 二.设置带中文的sql脚本的字符集

【转】sublime text 2 中文乱码解决办法

sublime text 2是一款非常优秀的跨平台文本及源代码编辑器,本人非常喜欢,但是不支持GB2312和GBK编码在某些时候比较麻烦.可以通过向sublime text 中添加编码类型转换包(比如“ConvertToUTF8")来解决这一问题.具体方法如下: 首先声明:这一方法前提是sublime text 2的安装路径没有中文字符,且系统路径的%username%中不包含中文字符.否则需要手动添加转换包,这个稍后说明. 1. 安装Sublime Package Control: 在Subl

[Linux] - CentOS中文乱码解决办法

CentOS 7 终端中文乱码解决办法: 1.使用vim编辑locale.config文件: vim /etc/locale.conf 2.将LANG="en_US.UTF-8"修改为: LANG="zh_CN.GB18030" LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en" SY

Linux下Tomcat向MySQL插入数据中文乱码解决办法

Linux下Tomcat向MySQL插入数据中文乱码解决办法 一.问题 在windows上面使用eclipse开发的项目在windows上面运行一切正常,部署到腾讯云时出现向MySQL数据库中插入数据是中文乱码 二.解决办法 1.尝试一直接在linux上面使用insert语句插入中文,正常2.尝试二在tomcat配置文件server.xml中加入useBodyEncodingForURI="true",不行3.尝试三在tomcat配置文件server.xml中再加入URIEncodin

zabbix中文乱码解决办法

问题一.字符默认不一致原因解决办法: 现象:设置中文之后,历史记录栏出现乱码,无法显示中文 1. 查看zabbix库默认字符集是否为latin1 2. 备份zabbix库 3. 先删掉zabbix库,再创建一个新库zabbix,指定默认字符为utf8 4. 替换备份库文件中的latin1为utf8,并导入zabbix库中 问题二.中文字体库缺失原因解决办法: 现象:数据图表显示出现乱码,无法显示中文 1. 下载中文字体: 说明:同时解决了告警邮件中中文乱码的问题!!! 命令 wget http:

代码从记事本拷贝到 source insight 工程出现中文乱码解决办法

1.代码从记事本拷贝到source insight 工程,此时出现乱码,解决办法,将输入法切换到中午输入法即可. 2.source insight 阅读VC++源码,注释为乱码解决方案 1.options->preferences->Syntax Formatting->Styles: 2.在Style Name 选择 Comment,再对其Font Name 选择Pick,然后再选择"新宋体". 3.source insight 阅读Linux源码,注释为乱码解决方