首页 > 语言 > PHP > 正文

php微信开发之关注事件

2024-05-05 00:04:12
字体:
来源:转载
供稿:网友

本文实例为大家分享了php微信关注事件的具体代码,供大家参考,具体内容如下

<?php/** * wechat php test *///define your tokendefine("TOKEN", "weixin");$wechatObj = new wechatCallbackapiTest();//$wechatObj->valid();$wechatObj->responseMsg();class wechatCallbackapiTest{  public function valid()  {    $echoStr = $_GET["echostr"];    //valid signature , option    if($this->checkSignature()){      echo $echoStr;      exit;    }  }  public function responseMsg()  {    //get post data, May be due to the different environments    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];    //extract post data    if (!empty($postStr)){        $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);        $fromUsername = $postObj->FromUserName;        $toUsername = $postObj->ToUserName;        $type = $postObj->MsgType;        $customevent = $postObj->Event;        $keyword = trim($postObj->Content);        $time = time();        $textTpl = "<xml>              <ToUserName><![CDATA[%s]]></ToUserName>              <FromUserName><![CDATA[%s]]></FromUserName>              <CreateTime>%s</CreateTime>              <MsgType><![CDATA[%s]]></MsgType>              <Content><![CDATA[%s]]></Content>              <FuncFlag>0</FuncFlag>              </xml>";               if($type=="event" and $customrevent=="subscribe"){          $contentStr = "感谢你的关注/n回复1查看联系方式/n回复2查看最新资讯/n回复3查看法律文书";          $msgType = "text";          $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);          echo $resultStr;          }          if(!empty( $keyword ))        {                          $msgType = "text";          if($keyword=="1"){          $contentStr = "qiphon";}          if($keyword=="2"){          $contentStr = "test 。";}          if($keyword=="3"){          $contentStr = "test333";}                   $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);          echo $resultStr;        }else{          echo "Input something...";        }    }else {      echo "";      exit;    }  }  private function checkSignature()  {    $signature = $_GET["signature"];    $timestamp = $_GET["timestamp"];    $nonce = $_GET["nonce"];      $token = TOKEN;    $tmpArr = array($token, $timestamp, $nonce);    sort($tmpArr);    $tmpStr = implode( $tmpArr );    $tmpStr = sha1( $tmpStr );    if( $tmpStr == $signature ){      return true;    }else{      return false;    }  }}?>

 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到PHP教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选