设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php微信开发之图片回复功能

发布时间:2022-02-24 13:41 所属栏目:121 来源:互联网
导读:本文实例为大家分享了php微信图片回复功能的具体代码,供大家参考,具体内容如下: !--?php /** * wechat php test */ //define your token define(TOKEN, weixin); $wechatObj = new wechatCallbackapiTest(); //$wechatObj---valid(); $wechatObj-responseM
  本文实例为大家分享了php微信图片回复功能的具体代码,供大家参考,具体内容如下:
 
  <!--?php
  /**
   * wechat php test
   */
    
  //define your token
  define("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 (!emptyempty($postStr)){
    
          $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
          $fromUsername = $postObj->FromUserName;
          $toUsername = $postObj->ToUserName;
          $type = $postObj->MsgType;
          $customrevent = $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 = "33333333333";
            $msgType = "text";
            $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
            echo $resultStr;
            }   
          if($type=="image" ){
            $contentStr = "你的图片很棒!";
            $msgType = "text";
            $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
            echo $resultStr;
            }   
    
          if(!emptyempty( $keyword ))
          {                 
            $msgType = "text";
            if($keyword=="1"){
            $contentStr = "333";}
            if($keyword=="2"){
            $contentStr = "444
            if($keyword=="3"){
            $contentStr = "11";}           
            $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;
      }
    }
  }
    
  ?>
  

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读