PHP的json_encode函数应用到微信接口问题(include \uxxxx will create fail)
2015-07-28 11:43
615 查看
今天学习了一下微信企业号发送消息的接口,发现在发送含有中文字符的信息时,微信接口响应错误,错误信息为:
invalid charset. please check your request, if include \uxxxx will create fail!
但是,在不包含中文字符的事情,却没有什么问题。其实错误信息已经很明确,是因为包含了\uxxxx这个Unicode编码导致无法解析。
由于使用的是PHP,在发信息前,使用了json_encode函数,该函数会把中文字符转化为Unicode的格式,那如何把中文字符直接传过去呢。
先看如下代码:
<?php
var_dump(json_encode('中文'));
var_dump(json_encode('中文',JSON_UNESCAPED_UNICODE));
输出:
string(14) ""\u4e2d\u6587""
string(8) ""中文""
加上JSON_UNESCAPED_UNICODE参数进行提交,微信接口返回正确。
注意:JSON_UNESCAPED_UNICODE仅在PHP 5.4版本以上才可以使用
invalid charset. please check your request, if include \uxxxx will create fail!
但是,在不包含中文字符的事情,却没有什么问题。其实错误信息已经很明确,是因为包含了\uxxxx这个Unicode编码导致无法解析。
由于使用的是PHP,在发信息前,使用了json_encode函数,该函数会把中文字符转化为Unicode的格式,那如何把中文字符直接传过去呢。
先看如下代码:
<?php
var_dump(json_encode('中文'));
var_dump(json_encode('中文',JSON_UNESCAPED_UNICODE));
输出:
string(14) ""\u4e2d\u6587""
string(8) ""中文""
加上JSON_UNESCAPED_UNICODE参数进行提交,微信接口返回正确。
注意:JSON_UNESCAPED_UNICODE仅在PHP 5.4版本以上才可以使用
相关文章推荐
- 微信支付开发php,微信回调
- 【重要】安卓微信闪退,非清空数据法解决,不破坏聊天记录【完善中】
- 微信支付Notice: Use of undefined constant CURLOP_TIMEOUT - assumed
- php小程序--记事本--登陆判断
- 微信开发经常使用的东西
- 微信公众号中如何展开、隐藏内容
- 不加好友就能微信聊天?微信企业号实现了!
- 微信第三方接入遇到的科恩(坑)——登录、分享
- Android中的仿微信界面
- 根据微信号来抓取微信文章
- Android仿微信头部下拉菜单
- 微信开发文档与工具整理
- 微信红包接入2-项目集成
- 上海9000辆出租车上铺设免费微信连WiFi
- 简单的java小程序之一键测网速
- C# 数字证书微信API调用使用参考事例
- 微信红包接入1-接入前准备
- 微信公众号开发之微信模板消息
- 微信--上传图文消息 群发消息
- ios 微信开发