标签:style blog http color 使用 os io strong
$wechatObj = new wechatCallbackapiTest(); $wechatObj->valid();第8行的意思是将wechatCallbackapiTest这个类由抽象转成实体化,什么意思呢?假设wechatCallbackapiTest是一个手机,尽管你想要用这个手机做非常多事,但前提是这个手机要是你的啊!无论这个手机再好,但它终究是抽象的,和你没关系的。那要怎么变成你的呢?非常easy,用new 来购买下,将这个手机买下来。等快递送手机上门时,你手里拿着手机才会有那种实实在在的感觉。
$wechatObj = new wechatCallbackapiTest(); //$wechatObj->valid();以下就要调用消息回复的函数,相似调用接口验证的写法,我们这样写:
$wechatObj->responseMsg();//调用回复消息的函数既然回复消息的“开关”打开了,想必如今我们的公众平台应该能够自己主动回复消息了吧?在測试之前要先将上面改动的代码打包成zip文件,然后依照之前的方法上传到SAEserver上(假设忘了猛戳这里)。
$contentStr = "Welcome to wechat world!";没错,仅仅要将我们要回复的文字放到$contentStr这个变量中,那么微信就会自己主动回复我们想要的文字。以下我将这句话换成“风一般的男纸”,代码例如以下:
$msgType = "text"; $contentStr = "风一般的男纸!"; $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr;上传到SAE上试试,例如以下图:
$msgType = "text"; if($keyword == "1") { $contentStr = "博主ID:star特530"; } else if($contentStr == "2") { $contentStr = "博主爱好:唱歌、跳舞、看书"; } else { $contentStr = "能说人话吗?"; }
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr;
3、关注回复。所谓关注回复,就是当别人关注你时须要回复他的内容,这个我之前在编辑者模式的使用时有提到过。
在代码45行之前加入以下这么一段代码:
$type = $postObj->MsgType;//获取用户发来的消息类型(可能是文字,也可能是事件推送) $customevent = $postObj->Event;//获取用户是关注还是取消关注 //当消息类型为事件推送,而且customevent 为 subscribe(关注)的情况时 if($type == "event" and $customevent == "subscribe") { $msgType = "text"; $contentStr = "感谢您的关注,回复“1”查看博主ID;回复“2”查看博主爱好"; $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr); echo $resultStr; }
最后补充一下,就是微信回复的消息,除了英文部分外,其它都是乱码,这是怎么回事呢?由于微信传输信息採用的是XML格式,而XML格式採用的是UTF-8编码,因此我们要将中文转码为UTF-8编码。方法例如以下:
在Dreamweaver中“改动”菜单 中选择 “页面属性”,然后选择“标题/编码”,在编码的下拉列表中选择最上端的Unicode(UTF-8),保存更新后就可以正常显示。
any question?
no!
OK!,that is all.
恩,本篇到此结束。
【玩转微信公众平台之九】 第一个功能:消息自己主动回复,布布扣,bubuko.com
标签:style blog http color 使用 os io strong
原文地址:http://www.cnblogs.com/zfyouxi/p/3899474.html