php json_encode使用中文不转码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php json_encode使用中文不转码相关的知识,希望对你有一定的参考价值。

参考技术A PHP转JSON,中文会被转码成unicode,使用常量 JSON_UNESCAPED_UNICODE 可以使中文原样输入。

不使用 JSON_UNESCAPED_UNICODE

使用 JSON_UNESCAPED_UNICODE

Json在 5.4 还加入了: JSON_BIGINT_AS_STRING , JSON_PRETTY_PRINT , JSON_UNESCAPED_SLASHES 等选项, 如果有兴趣, 大家可以参看: json_encode

其中有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个常量。

PHP5.4才支持 JSON_UNESCAPED_UNICODE 这个参数,此参数是让中文字符在json_encode的时候不用转义,减少数据传输量。

以上是关于php json_encode使用中文不转码的主要内容,如果未能解决你的问题,请参考以下文章

php 解决json_encode中文UNICODE转码问题

php 解决json_encode中文UNICODE转码问题

php 解决json_encode中文UNICODE转码问题

PHP json_encode函数使用后多出来首尾的引号中文转码问题

PHP的json_encode中文被转码的问题

PHP的json_encode中文被转码的问题