Posted on 2013-08-24 16:02
saobaolu 阅读(1302)
评论(0) 编辑 收藏 所属分类:
微信公共平台开发
代码改编自 NetPuter 大大发布的 SDK,这份 SDK 是我用过的最好的 PHP SDK,修改了一些东西:
1、增加了收到的讯息类型 voice video
2、收到text的时候,如果是 hello2bizuser 的话,调用 onsubscribe 方法(微信4.x 以前貌似都还是发hello2bizuser 所以不得不兼容啊)


1 <?php
2
3 /**
4 * 微信公众平台 PHP SDK
5 *
6 * @author NetPuter <netputer@gmail.com>
7 */
8
9 /**
10 * 微信公众平台处理类
11 */
12 class Wechat {
13
14 /**
15 * 调试模式,将错误通过文本消息回复显示
16 *
17 * @var boolean
18 */
19 private $debug;
20
21 /**
22 * 以数组的形式保存微信服务器每次发来的请求
23 *
24 * @var array
25 */
26 private $request;
27
28 /**
29 * 初始化,判断此次请求是否为验证请求,并以数组形式保存
30 *
31 * @param string $token 验证信息
32 * @param boolean $debug 调试模式,默认为关闭
33 */
34 public function __construct($token, $debug = FALSE) {
35 if (!$this->validateSignature($token)) {
36 exit('签名验证失败');
37 }
38
39 if ($this->isValid()) {
40 // 网址接入验证
41 exit($_GET['echostr']);
42 }
43
44 if (!isset($GLOBALS['HTTP_RAW_POST_DATA'])) {
45 exit('缺少数据');
46 }
47
48 $this->debug = $debug;
49 set_error_handler(array(&$this, 'errorHandler'));
50 // 设置错误处理函数,将错误通过文本消息回复显示
51