最近遇上了一件怪事,前两天写的好好的代码,今天再运行就乱码了。查了一下,不是一般意义的乱码,而是返回的unicode编码的字符。

如汉字:登录失败,经过json_encode之后返回变成:"\u767b\u5f55\u5931\u8d25"

实在气死杂家,找了一通,发现这是个普遍问题,最终解决方法如下:

正常调用json_encode($arr),在echo之间,将这个json数据通过以下函数处理下:

public static function JSON($str){

$json = json_encode($str);

return preg_replace("#\\\u([0-9a-f]+)#ie","iconv('UCS-2','UTF-8', pack('H4', '\\1'))",$json);

}

这样就再也不乱码了。对于高版本php,可以直接加个参数,但对低版本无效,所以只能这样。完整代码如下:

调用示例:

// echo "登录失败";$arr = array ();$arr ['code'] = - 1;$arr ['message'] = "登录失败";echo $arr ['message'];$arr ['data'] = "";return util::JSON ( $arr );

参考: http://stackoverflow.com/questions/6771938/any-way-to-return-php-json-encode-with-encode-utf-8-and-not-unicode

php返回中文是 u,php json_encode总是返回unicode字符 u.问题 解决相关推荐

  1. php接口返回中文,php json_encode中提示的中文总是返回\u767b\u5f55\u6210\u529f\uff01

    最近在练习使用 php 写一些简单的接口,但是在返回的消息中,如果有中文,在测试后总是返回: {"resultCode":200,"message":" ...

  2. ajax后台返回数据中文乱码_ajax提交 返回中文乱码问题

    接口返回数据相关 使用@ResponseBody后返回NUll 说明:刚把后台运行起来,兴高采烈的测试接口数据,结果无论如何都是返回null, 最终通过各种百度,发现原来是没有引入关键的Jar包. 解 ...

  3. 解决DeferredResult 使用 @ResponseBody 注解返回中文乱码

    Spring MVC 项目在使用 DeferredResult 实现异步接口,但返回中文乱码,显示的都是问号. 相关代码: /*** 长轮询* * @return*/@RequestMapping(v ...

  4. 关于Django中JsonResponse返回中文字典编码错误的解决方案

    遇到这样一个问题,返回的json不是中文 def get_json(request):return JsonResponse({"res": "成功"}) 结果 ...

  5. 解决SpringMVC中文乱码问题 -----这是服务器返回参数到前端中文乱码

    解决SpringMVC中文乱码问题 -----这是服务器返回参数到前端中文乱码 参考文章: (1)解决SpringMVC中文乱码问题 -----这是服务器返回参数到前端中文乱码 (2)https:// ...

  6. Springboot使用FastJson后,接口返回中文乱码的问题解决。

    Springboot使用FastJson后,接口返回中文乱码的问题解决. 参考文章: (1)Springboot使用FastJson后,接口返回中文乱码的问题解决. (2)https://www.cn ...

  7. django JsonResponse返回中文时显示unicode编码(\u67e5\u8be2)

    django JsonResponse返回中文时显示unicode编码(\u67e5\u8be2) 关注公众号"轻松学编程"了解更多. 原因 这个unicode编码,是python ...

  8. php json_encode unicode,phpjson_encode总是返回unicode字符u.问题解决

    最近遇上了一件怪事,前两天写的好好的代码,今天再运行就乱码了.查了一下,不是一般意义的乱码,而是返回的unicode编码的字符. 如汉字:登录失败,经过json_encode之后返回变成:" ...

  9. 服务器微信接口返回乱码,企业微信会话内容存档调用DecryptData返回中文出现乱码...

    企业微信会话内容存档调用DecryptData返回中文出现乱码 问题类型 API/组件名称 终端类型 微信版本 基础库版本 Bug 企业微信会话存档sdk 工具 无 无 我用c#开发会话存档功能,调用 ...

  10. Java 调用dll 乱码_DLL返回中文,JNA接收乱码

    VS2013,C++做的DLL: char* pt; char * test1(){ pt = (char*)malloc(200000000); char buf[100] = "hell ...

最新文章

  1. SyntaxHighlighter -- 代码高亮插件
  2. Creating an Extender Control to Associate a Client Behavior with a Web Server Control
  3. Python语言学习之常见语句命令那些事:python和常见语句命令(条件语句、pass语句)使用方法之详细攻略
  4. python电商爬虫源码_吴裕雄--天生自然PYTHON爬虫:爬取某一大型电商网站的商品数据...
  5. mac下安装redis
  6. kafka_rebalance过长问题排查
  7. lib和dll的区别、生成以及使用详解
  8. 增益比值 dB 以及 dBw-dBmv 等之详解
  9. 数字图像处理学习笔记(三):ORB算法(尺度不变特征变换)Oriented FAST and Rotated BRIEF
  10. java spring mvc json ajax 优势_SpringMVC后台json数据前台ajax获取不到!!!急求解答!!!...
  11. 计算机编程语言的分类,解释型语言、编译型语言、脚本语言的关系
  12. pycharm双击没有反应(Idea机制与之相同)
  13. c 语言万年历算法,【C语言】第一个C语言小程序 —— 日期算法和万年历
  14. 智慧酒店客房控制系统开发提高酒店管理效率和服务质量
  15. 利用access对中控考勤系统的二次开发
  16. 企划学院第十二期游学活动“聚合”郑州站圆满落下帷幕!
  17. AI npc会做成为游戏制作人的梦吗?
  18. 【阅读百本英文原版书】—为提升英语运用能力—已看完77本
  19. 关于D4RL的agent包的tf.contrib兼容性问题
  20. ASII码:小写字符比大写字符大32

热门文章

  1. html5中关于input使用方法的改变
  2. linux python 链接 oracle
  3. 思维导图软件列表(mind mapping software list)
  4. Mybatis分页插件PageHelper查询ORACLE数据库示例
  5. 分布式文件存储FastDFS之环境搭建篇
  6. MyCat分片规则之ASCII码取模范围分片
  7. SpringBoot读取配置文件中的数据
  8. Linux 进程间通信 无名管道(pipe)
  9. JS 里的数据类型及几个操作
  10. Apache目录禁止解析