微信公众平台开发关注及取消关注事件的方法
本文实例讲述了微信公众平台开发关注及取消关注事件的方法。分享给大家供大家参考。具体分析如下:
用户在关注与取消关注公众号时,微信会把这个事件推送到开发者填写的URL,方便开发者给用户下发欢迎消息或者做帐号的解绑.
下面是一个微信公众平台关注和取消关注的实例,代码如下:
define("TOKEN","w3note");//定义识别码
$wechatObj=newwechatCallbackapiTest();//实例化wechatCallbackapiTest类
if(!isset($_GET["echostr"])){
$wechatObj->responseMsg();
}else{
$wechatObj->valid();
}
classwechatCallbackapiTest
{
publicfunctionvalid()
{
$echoStr=$_GET["echostr"];
if($this->checkSignature()){
echo$echoStr;
exit;
}
}
publicfunctionresponseMsg()//执行接收器方法
{
$postStr=$GLOBALS["HTTP_RAW_POST_DATA"];
if(!emptyempty($postStr)){
$postObj=simplexml_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);
$RX_TYPE=trim($postObj->MsgType);
switch($RX_TYPE){
case"event":
$result=$this->receiveEvent($postObj);
breadk;
}
echo$result;
}else{
echo"";
exit;
}
}
privatefunctionreceiveEvent($object){
$content="";
switch($postObj->Event){
case"subscribe":
$content="欢迎关注网志博客";//这里是向关注者发送的提示信息
break;
case"unsubscribe":
$content="";
break;
}
$result=$this->transmitText($object,$content);
return$result;
}
privatefunctiontransmitText($object,$content){
$textTpl="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
$result=sprintf($textTpl,$object->FromUserName,$object->$ToUserName,time(),$content);
return$result;
}
privatefunctioncheckSignature()
{
$signature=$_GET["signature"];
$timestamp=$_GET["timestamp"];
$nonce=$_GET["nonce"];
$token=TOKEN;
$tmpArr=array($token,$timestamp,$nonce);
sort($tmpArr,SORT_STRING);
$tmpStr=implode($tmpArr);
$tmpStr=sha1($tmpStr);
if($tmpStr==$signature){
returntrue;
}else{
returnfalse;
}
}
}代码相关参数说明:
希望本文所述对大家的php程序设计有所帮助。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下