随笔- 310  文章- 1  评论- 0  阅读- 85818 

PHP转JSON,中文会被转码成unicode,使用常量JSON_UNESCAPED_UNICODE可以使中文原样输入

1
2
3
4
5
echo json_encode("中文");
//Output: "\u4e2d\u6587"
 
echo json_encode("中文", JSON_UNESCAPED_UNICODE);
//Output: "中文"

 

Json在5.4还加入了: JSON_BIGINT_AS_STRINGJSON_PRETTY_PRINTJSON_UNESCAPED_SLASHES等选项

其中有2个比较常用到的参数
JSON_UNESCAPED_UNICODE(中文不转为unicode ,对应的数字 256)
JSON_UNESCAPED_SLASHES (不转义反斜杠,对应的数字 64)

通常json_encode只能传入一个常量,如果同时使用2个常量怎么办?

JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 320

使用方法:json_encode($arr,320);即可完成同时使用2个常量。

1
2
3
4
5
6
7
8
9
$arr=[
"a"=>"test",
"b"=>"测试",
];
 
echo json_encode($arr,320);
//{"a":"test","b":"测试"}
echo json_encode($arr);
//{"a":"test","b":"\u6d4b\u8bd5"}

  

 posted on   boye169  阅读(207)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示