PHP JSON_ENCODE 不转义中文汉字的方法

2018-09-26 15:14:23

php从数据库查询出来的数据,json_encode以后,保存到本地.json文件


可气的是文件内的编码,基本都是以\u开头的汉子。

这就完蛋了,虽然不影响使用,但是强迫症的我肯定是不满意的。

  1. 是也不一定100%不影响直接使用

  2. 关键是占内存啊。



尝试了php的 吧 \u 等字符串,转换成中文的。试了很多不管用啊。

表示绝望,因为大家都管用。



后来发现不是查询数据库编码的问题。是json_encode的问题。


PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据。

网上很多,但是其实都是错误的,正确的方法是在json_encode 中加入一个参数 JSON_UNESCAPED_UNICODE 

 json_encode($data, JSON_UNESCAPED_UNICODE); //必须PHP5.4+


  • 2020-02-04 18:43:10

    AssetManager.finalize() Timed Out 解决办法以及分析

    在我们的项目崩溃中,有一个比较常见的bug,就是 java.util.concurrent.TimeoutException android.content.res.AssetManager.finalize() timed out after 10 seconds 意思简单明了,就是说在AssetManager析构的时候发生了超时异常。

  • 2020-02-06 13:32:10

    android.os.NetworkOnMainThreadException

    在Android 4.0以上,网络连接不能放在主线程上,不然就会报错android.os.NetworkOnMainThreadException。但是4.0下版本可以不会报错。

  • 2020-02-07 23:46:44

    You must call removeView() on the child's parent first解决办法

    出现这样的情况最多是发生在recyclerView中,holder复用的过程中,多次添加view,第一次添加的时候view有了父类了,可能就是复用引起的。 我是发生在给recyclerView添加广告view的时候发生的。

  • 2020-02-11 17:43:35

    基于VCamera,仿微信录制短视频

    vcamera.so这个确实挺好用,可定制性也挺高,但是确定也不小,需要引入的这个so包,10M啊。对于安装包苛刻的用户,这是致命啊。 我现在是抛弃他了。但是在这里还是记录一下用法吧。防止以后再用他。