PHP微信发送推送消息乱码的解决方法
先用urlencode是因为中文在数组转json时会被编码为unicode,微信接口无法识别,所以得在json_encode前先来个编码,等转换后再用urldecode转回来,这样传输给接口的就是正常的中文了。
参考代码:
$message = array( 'touser'=>$touser, 'msgtype'=>'text', 'text'=>array('content'=>urlencode($text)) ); $message = urldecode(json_encode($message));
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
相关推荐
-
PHP的微信支付接口使用方法讲解
在开发之中经常会使用到支付的功能,现在常用的两种支付方式是支付宝和微信.相对而言,支付宝的文档较为健全,并且配置和调用方式方式比较简单,这里就不过多的描述. 首先去微信官网网站下去下载服务端的demo:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1 这里虽然是官网提供的公众号支付的demo,虽然微信支付的预下单等都可以在前端进行实现,不过官方还是建议在服务端进行处理.下载后,将其中的demo引入你的项目就好,注意的是如果
-
PHP implode()函数用法讲解
PHP implode() 函数 实例 把数组元素组合为一个字符串: <?php $arr = array('Hello','World!','Beautiful','Day!'); echo implode(" ",$arr); ?> 定义和用法 implode()函数返回一个由数组元素组合成的字符串. 注释: implode() 函数接受两种参数顺序.但是由于历史原因,explode() 是不行的,您必须保证 separator 参数在 string 参数之前才行. 注
-
PHP中rename()函数的妙用讲解
大家都知道,rename()函数可以对文件或目录进行重命名的操作.其实它还可以做很多事情. 熟悉unix的朋友应该知道shell命令mv,它相当与win32的移动,而且移动的同时可进行重命名.我发现,php的rename()函数就相当于mv,它不仅仅只有简单的重命名的功能,同样可以改变文件甚至整个目录的路径. 例如: $oldpath ----文件或目录原来路径 $newpath ----新定义路径 那么 rename($oldpath,$newpath)就可以完成文件/目录移动的操作 经过我的
-
ThinkPHP中图片按比例切割的代码实例
在开发中,经常会遇到图片需要按照一定比例进行缩放的情况,但是,如果一张长宽比为2:1的如果需要按照1:1的比例进行展示,那么这就意味着图片会发生变形.下面便介绍下载tp框架中如何按照比例切割并缩放图片. /** * 切割图片 * @param $path 所要切割的图片的路径 * @param $prefix 给切割后图片的前缀 * @param $width 宽度所占比例 * @param $height 高度所占比例 * @return string 图片名称 */ function siz
-
PHP levenshtein()函数用法讲解
PHP levenshtein() 函数 实例 计算两个字符串之间的 Levenshtein 距离: <?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?> 定义和用法 levenshtein()
-
PHP递归的三种常用方式
递归:函数自己调用自己的一种编程方法,类似于循环,所以递归调用的函数中必须有终止条件,否则就会成为死循环 无限级:其实并不是真正的无限级,只是层级不确定,所以我们称之为无限级 因为常用递归实现无限级分类,所以我们习惯说无限级的时候带上分类. 递归的三种常用技法: 静态变量.全局变量.引用 一 静态变量方式 function loop(){ static $i = 0; echo $i.' '; $i++; if($i<10){ loop(); } } loop();//输出 0 1 2 3 4
-
PHP判断是否是微信打开还是浏览器打开的方法
/** * 方法一:判断判断是否是微信打开(试过,可以) */ $ua = $_SERVER['HTTP_USER_AGENT']; if (strpos($ua, 'MicroMessenger') == false && strpos($ua, 'Windows Phone') == false) { echo '普通浏览器打开'.$wxpay_type; //跳转移动端页面 $alipay_type=5;//支付宝移动支付 $wxpay_type=3;//微信H5支付 } else
-
PHP htmlspecialchars_decode()函数用法讲解
PHP htmlspecialchars_decode() 函数 实例 把预定义的 HTML 实体 "<"(小于)和 ">"(大于)转换为字符: <?php $str = "This is some <b>bold</b> text."; echo htmlspecialchars_decode($str); ?> 上面代码的 HTML 输出如下(查看源代码): <!DOCTYPE html&
-
PHP htmlspecialchars()函数用法与实例讲解
PHP htmlspecialchars() 函数 实例 把预定义的字符 "<" (小于)和 ">" (大于)转换为 HTML 实体: <?php $str = "This is some <b>bold</b> text."; echo htmlspecialchars($str); ?> 上面代码的 HTML 输出如下(查看源代码): <!DOCTYPE html> <html
-
PHP正则验证字符串是否为数字的两种方法并附常用正则
php 正则验证字符串是否为数字 方法一: php中利用正则表达式验证字符串是否为数字一件非常容易的事情,最主要的是如何写好正则表达式以及掌握正则表达式的写法,在此利用正则表达式的方式来列举一下判断数字的方法. <? if($str) { if(eregi("^[0-9]+$",$str)) { $str=(int)$str; } else { echo "获取到的数据不是有效的数字类型,操作将停止!"; exit(); } } else { echo &qu
随机推荐
- jQuery之$(document).ready()使用介绍
- php 调试利器debug_print_backtrace()
- 利用javascript实现的三种图片放大镜效果实例(附源码)
- win2008 r2 服务器安全设置之安全狗设置图文教程
- Java 获取指定日期的实现方法总结
- c/c++堆栈分布及其设置方法
- 浅谈下拉菜单中的Option对象
- SMARTY学习手记
- PHP新手入门学习方法
- php下利用curl判断远程文件是否存在的实现代码
- Windows 下noinstall方式安装 mysql 5.7.5 m15 winx64(推荐)
- Remoting和Webservice的详细介绍及区别
- 精选的10款用于构建良好易用性网站的jQuery插件
- Android基础之Fragment与Activity交互详解
- 详解C++编程中的条件判断语句if-else与switch的用法
- python中Switch/Case实现的示例代码
- python pandas中DataFrame类型数据操作函数的方法
- c#快速写本地日志方法
- 通过JQuery,JQueryUI和Jsplumb实现拖拽模块
- Django 多表关联 存储 使用方法详解 ManyToManyField save