博主辛苦了,我要打赏银两给博主,犒劳犒劳站长。
【摘要】很多时候我们需要使用 json_encode 来对数据进行格式的转换,但我们并不希望转义中文,那么怎么实现这个功能呢,在 PHP 5.4.0 及以上版本是支持我们不转义中文的。
IOS 程序中不识别读取到的 JSON 数据中 \u 开头的数据,所以当我们在使用 PHP 生成 JSON 的时候,必须将汉字不转义为 \u 开头的 UNICODE 数据。
$arr = array(
'name' => '马富天',
'age' => 18,
'sex' => '男'
);
// 转义中文
$json = json_encode($arr);
var_dump($json);
// string '{"name":"\u9a6c\u5bcc\u5929","age":18,"sex":"\u7537"}'
// 备注 PHP 5.4 及以上版本
$json = json_encode($arr,JSON_UNESCAPED_UNICODE);
var_dump($json);
// string '{"name":"马富天","age":18,"sex":"男"}'
// 将 json 数据转成数组
$arr = json_decode($json,true);
var_dump($arr);
/*
array (size=3)
'name' => string '马富天' (length=9)
'age' => int 18
'sex' => string '男' (length=3)
*/
如下图所示:
官网的说明:http://php.NET/manual/en/function.json-encode.php
5.4.0 JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, and JSON_UNESCAPED_UNICODE options were added.
版权归 马富天PHP博客 所有
本文标题:《PHP 中使用 json_encode 不转义中文的方法》
本文链接地址:http://www.mafutian.net/250.html
转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
顶0
踩0
第 2 楼 葫芦岛网站建设 2017-03-31 14:38:05 辽宁葫芦岛
第 1 楼 月小升 2017-03-19 20:32:54 天津天津
评论审核未开启 |