PHP中使用数组转换成Json格式出现中文乱码解决方案
目录
- PHP中使用数组转换成Json格式出现中文乱码解决方案
- 问题描述
- 解决方向
- URL编码原理
- 解决代码示例
PHP中使用数组转换成Json格式出现中文乱码解决方案
问题描述
在进行数组转换为JSON格式结果时,可能会出现中文字符乱码的情况。
解决方向
将数组中的每个元素进行URL格式编码,最后对结果JSON对象进行 URL解码1,以实现解决中文乱码问题。说到URL格式编码就不得不说到常见的 urlencode()2函数。
URL编码原理
将需要转码的字符转为16进制,然后从右到左,取4位(不足4位直接处理),每2位做一位,前面加上%,编码成%XY格式。
例如:
汉字中对应的ASCII码是-10544,对应的16进制是D6D0,那么urlencode编码结果是:%D6%D0;
解决代码示例
//遍历目标数组
foreach($array as $i=>$v){// 需要对数组中每一个项进行URL编码$array [$i]=urlencode($v);}//对最后的JSON对象进行URL解码,如果缺失这一步可能中文字段仍然为乱码情况$JSON = urldecode(json_encode($array));
URL编码(URL encoding),也称作百分号编码(Percent-encoding), 是特定上下文的统一资源定位符 (URL)的编码机制。 ↩︎
urlencode是可将字符串以URL编码,用于编码处理的函数。ASP,PHP,JSP,C#/.net等多种语言中皆有使用。 ↩︎
PHP中使用数组转换成Json格式出现中文乱码解决方案相关推荐
- Spyder里dot文件转换成图片格式及中文乱码问题
Spyder决策树程序图片运行不出来 先安装Graphviz 再到cmd中运行下图语句,路径需要改成自己的 dot -Tpng D:\course\数据挖掘\老师给的资源\熊家葆数据挖掘第四单元之二- ...
- 把php数据转成json格式转换,php将从数据库中获得的数据转换成json格式并输出的方法...
php将从数据库中获得的数据转换成json格式并输出的方法 如下所示: header('content-type:application/json;charset=utf8'); $results = ...
- vue-axios下载文件流blob,ie下载报传递给系统调用的数据区域太小.ie文件流下载报错;文件下载失败将blob的错误信息转换成json格式
本次下载是后台文件流传输,前端下载,前端将拿到的下载id和名称downloadName传递给下载方法:如果是多个下载,可以采用数组for循环 情景描述: 1.如果符合导出条件, 后端直接返回数据流,如 ...
- 消息转换器之把返回来的对象转换成json格式
消息转换器之把返回来的对象转换成json格式 这个是把数据库的数据通过对象返给前端,会出现下列没有转换的现象 这个需要我们加入消息转换器进行转换,把Java对象转为json字符串,在配置类加入这段代码 ...
- Jquery 将后台返回的字符串转换成Json格式的数据
//code by:博客园-曹永思 第一步:将DataTable转换成 Json格式的数据 方法 一 View Code /// <summary>/// DataTable转成Json格 ...
- php 输出 cvs,php将数组转换成cvs格式并输出的简单示例
这篇文章主要为大家详细介绍了php将数组转换成cvs格式并输出的简单示例,具有一定的参考价值,可以用来参考一下. 对php将数组转换成cvs格式文件输出感兴趣的小伙伴,下面一起跟随512笔记的小编两巴 ...
- xml 文本转json java_java将XML文档转换成json格式数据
本篇文章主要介绍了java将XML文档转换成json格式数据的示例,希望能帮助到大家. 功能 将xml文档转换成json格式数据 说明 依赖包: 1. jdom-2.0.2.jar : xml解析工具 ...
- 在线Excel文件解析转换成JSON格式
在线Excel文件解析转换成JSON格式 在线Excel文件解析转换成JSON格式 本工具可以将上传的Excel文件解析转换成JSON格式,支持下载 本工具可以将上传的Excel文件解析转换成JSON ...
- 电脑中PDF如何转换成WPS格式
说起WPS文件转换成PDF格式的话不少人都会进行操作了,那么在电脑中PDF怎么转换成WPS格式呢?常常从事电脑办公的人都知道,转换格式是我们常常需要进行处理的一件工作,也是让人头大的问题.其实PDF转 ...
- JS中的数组转变成JSON格式字符串的方法
有一个JS数组,如: var arr = [["projectname1","projectnumber1"],["projectname2" ...
最新文章
- 1010 Radix
- Btrfs入门(一)
- P1136 迎接仪式
- 《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一1.1.1 确定参数...
- 接口测试 java_接口测试--Java
- vue中集合取第一个_快速学习Vue框架(知识点集合)
- 顺序存取和随机存取的区别_内存和硬盘的区别
- 数据库设计系列[04]组织结构加入权限系统
- SpringMVC4+Hibernate4运行报错Could not obtain transaction-synchronized Session for current thread...
- 八点建议助您写出优雅的Java代码
- CS224N刷题——Assignment1.11.2_Softmax神经网络基础
- 值得收藏的UmiJS 教程
- mate30pro鸿蒙系统刷机包下载,华为 Mate 30 Pro 的鸿蒙 2.0 Beta 版刷机包流出(附下载地址)...
- 企业网络拓扑图简述20200805
- 17 岁成为 iOS 越狱之父,25 岁造出无人车,黑客传奇!
- Numpy用法详细总结:学习numpy如何使用,看这一篇文章就足够了
- 事实劳动关系的解除依据什么法律规定
- 国外问卷调查是不是骗人的?
- catia刨面命令_Catia查看装配体剖面的操作方法
- 【阿里云-容器】阿里云容器服务Kubernetes版快速入门
热门文章
- 文化学刊杂志文化学刊杂志社文化学刊编辑部2022年第3期目录
- 2.14 视图的分页预览以及分页符的使用 [原创Excel教程]
- 微信授权登陆跳转提示10003 redirect_uri域名与后台配置不一致
- 不同VLAN中的计算机可以ping通吗,不同vlan间互相能ping通配置.ppt
- VBA实现多条件查询
- 安卓手机如何打开开发者模式?
- 微信表情包 php,教你用PS给你的室友做一套动态微信豪华表情包
- 进销存系统怎么部署到自己服务器,衡水进销存系统部署
- SEO优化与网站浏览量提升
- vue中的浏览量_vue项目中使用百度统计