即时新闻

设置PHP的json_encode方法不对中文进行Unicode转码

2022年12月16日 来源:大美华赢
分享到微信
打开微信,点击底部的“发现”,
使用“扫一扫”即可将网页分享至朋友圈。

我们知道,默认情况下,json_encode()会把中文转码成“\u6709\u975e\u6cd5\u5173”这样的格式,这个其实是Unicode编码。

在一些特定的情况下,我们希望使用json_encode()转码时,不对中文进行转码,那有没有什么办法可以实现呢?

我们来试想一下,json_encode()默认会对中文转码,我们能不能在参数传入之前先变成别的样子,等json_encode之后再变回来呢?是不是一下子就想到了urlencode?对,就用它。代码如下:

$str = urlencode($str);
$arr = new array('str'=>$str);
$json = json_encode($arr);
$json = urldecode($json);

这样写都看明白了吧,但有点麻烦了,对吧。其实在PHP5.4版本后,可以使用JSON_UNESCAPED_UNICODE参数来控制json_encode函数,让其不对中文文字进行转码。代码如下:

$data = json_encode($data, JSON_UNESCAPED_UNICODE);

一步搞定!

推荐阅读

友情链接 :  搜狐新闻  |  今日头条  |  腾讯新闻  |  一点资讯  |  凤凰新闻  |  网易新闻

城市 : 中国·南京

详细地址 : 南京市雨花台区

联系电话 : 18061221902

电子邮件 : hr-web100@qq.com