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+


  • 2018-03-13 22:42:44

    TraceView报错:unable to open trace file

    程序效率有些问题,想起用TraceView来分析一下,可是一直报标题中的错误,无法创建出我所需要的aa.trace文件,分析也就无从做起。

  • 2018-03-14 17:41:44

    MySQL的if,case语句使用总结

    Mysql的if既可以作为表达式用,也可在存储过程中作为流程控制语句使用,如下是做为表达式使用:

  • 2018-03-16 23:56:14

    layer-list -- layer-list的基本使用介绍

    简单理解,layer 是层,list 是列表,那么 layer-list 就是层列表的意思。但是,是什么层列表呢?? 其实 layer-list 是用来创建 LayerDrawable 的,LayerDrawable 是 DrawableResource 的一种, 所以,layer-list 创建出来的是 图层列表,也就是一个drawable 图形。

  • 2018-03-20 22:01:18

    Java如何进行Base64的编码(Encode)与解码(Decode)?

    Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便。在实际应用上,Base64除了能将Binary资料可视化之外,也常用来表示字串加密过后的内容。如果要使用Java 程式语言来实作Base64的编码与解码功能,可以参考本篇文章的作法。