IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    如何使得中文不被 json_encode 不编码成 unicode

    Denis | 邓鸿华发表于 2023-12-11 03:53:29
    love 0

    使用 php 自带的 json_encode 函数对数据进行编码时,中文都会变成 unicode,导致不可读,并且增加传输数据的大小,比如,对字符串“我爱水煮鱼”进行 json_encode 后,输出的是"\u6211\u7231\u6c34\u716e\u9c7c",那么如何使得中文不被 json_encode 不编码成 unicode 呢,有两种方法:

    1. 先将中文字段 urlencode,json_encode 后,再用 urldecode,也可以显示中文。

    echo urldecode(json_encode(urlencode("我爱水煮鱼")));

    2. 如果使用的 PHP 版本是 5.4 以上的版本,json_encode 函数已经新增了一个选项: JSON_UNESCAPED_UNICODE。加上这个选项后,就不会自动把中文编码了。

    echo json_encode("我爱水煮鱼", JSON_UNESCAPED_UNICODE);

    © WordPress果酱 / RSS 订阅 / 长期承接 WordPress 项目



沪ICP备19023445号-2号
友情链接