网站首页 > 博客文章 正文
在使用php编程的场景中,总有一些情况下需要将数组转为json字符串,就需要用到php自带的json_encode函数;
但是当数组中含有中文字符串时,转出来的结果却是以下结果(unicode字符串):
<?php $tmpArr = array( 'name' => '长裤', 'color' => 'blue', 'size' => 'XL', 'title' => '中年男装 长裤' ); $tmpJson = json_encode($tmpArr); echo $tmpJson; 输出:{"name":"\u957f\u88e4","color":"blue","size":"XL","title":"\u4e2d\u5e74\u7537\u88c5 \u957f\u88e4"}
要想中文不被转为unicode字符串,只需要给json_encode函数中传入一个参数JSON_UNESCAPED_UNICODE即可,如下:
<?php $tmpArr = array( 'name' => '长裤', 'color' => 'blue', 'size' => 'XL', 'title' => '中年男装 长裤' ); $tmpJson = json_encode($tmpArr,JSON_UNESCAPED_UNICODE); echo $tmpJson; 输出:{"name":"长裤","color":"blue","size":"XL","title":"中年男装 长裤"}
但是PHP版本<5.4.0中并不支持以上参数JSON_UNESCAPED_UNICODE,这个时候我们可以通过以下方式解决:
$tmpArr = array( 'name' => '长裤', 'color' => 'blue', 'size' => 'XL', 'title' => '中年男装 长裤' ); $tmpJson = json_encode($tmpArr); $tmpJson = preg_replace_callback("#\\\u([0-9a-f]{4})#i",function($matchs){ return iconv('UCS-2BE', 'UTF-8', pack('H4', $matchs[1])); },$tmpJson); echo $tmpJson; 输出:{"name":"长裤","color":"blue","size":"XL","title":"中年男装 长裤"}
好了,今天的分享就到这里,如果喜欢我的内容,欢迎转发~~
下期见!
- 上一篇: PHP如何修改数据库中JSON字段内容
- 下一篇: PHP轻松采集JSON内容,快速提取指定信息!
猜你喜欢
- 2024-09-18 PHP 解决json中文自动转换Unicode编码问题
- 2024-09-18 解锁数据存储的新维度:探索 PostgreSQL 中的JSON和数组特性!
- 2024-09-18 php读取数据库数据,并以json格式返回数据
- 2024-09-18 超详细的mysql数据库json字段类型语法大全
- 2024-09-18 从零学编程-JSON处理(json怎么学)
- 2024-09-18 灵活导出:如何将Excel数据转换为JSON对象格式
- 2024-09-18 如何把destoon数据生成json(如何在excel中随机生成一定范围内的数据)
- 2024-09-18 JSON概念(json基础知识)
- 2024-09-18 php返回json数据中文显示的问题(php返回json数据中文显示的问题怎么解决)
- 2024-09-18 javascript把二维数组转为json格式的字符串代码
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)