国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php微信公眾平臺開發(四)回復功能開發

php微信公眾平臺開發(四)回復功能開發

2021-04-04 19:23David_Tang PHP教程

這篇文章主要介紹了php微信公眾平臺開發的第四篇,微信回復功能開發,具有一定的參考價值,感興趣的小伙伴們可以參考一下

一、簡介

微信公眾平臺可以根據用戶發送的信息進行判斷,然后給出對應的回復,具有良好的交互性。下文將模擬簡單的回復功能,根據這個案例,開發者也可以基本理解微信交互的原理,進行更深層次的開發。

二、思路分析

用戶發送過來的文本信息,我們可以提取關鍵字,通過簡單的 if...elseif...else... 實現。

關鍵代碼如下:

php" id="highlighter_47472">
?
1
2
3
4
5
6
7
if($keyword=="你好"){
  $contentStr = "hello";
}elseif($keyword=="蘇州"){
  $contentStr = "上有天堂,下有蘇杭";
}else{
  $contentStr = "感謝您關注【卓錦蘇州】 微信號:zhuojinsz";
}

如果用戶發送"你好",則回復"hello",如果用戶發送"蘇州",則回復"上有天堂,下有蘇杭",其他信息,則回復你的歡迎詞。

三、完整代碼

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<?php
/**
 * wechat php test
 */
 
//define your token
define("TOKEN", "zhuojin");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->responseMsg();
//$wechatObj->valid();
 
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);
        $RX_TYPE = trim($postObj->MsgType);
 
        switch($RX_TYPE)
        {
          case "text":
            $resultStr = $this->handleText($postObj);
            break;
          case "event":
            $resultStr = $this->handleEvent($postObj);
            break;
          default:
            $resultStr = "Unknow msg type: ".$RX_TYPE;
            break;
        }
        echo $resultStr;
    }else {
      echo "";
      exit;
    }
  }
 
  public function handleText($postObj)
  {
    $fromUsername = $postObj->FromUserName;
    $toUsername = $postObj->ToUserName;
    $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(!empty( $keyword ))
    {
      $msgType = "text";
 
      if($keyword=="你好"){
        $contentStr = "hello";
      }elseif($keyword=="蘇州"){
        $contentStr = "上有天堂,下有蘇杭";
      }else{
        $contentStr = "感謝您關注【卓錦蘇州】 微信號:zhuojinsz";
      }
      $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
      echo $resultStr;
    }else{
      echo "Input something...";
    }
  }
 
  public function handleEvent($object)
  {
    $contentStr = "";
    switch ($object->Event)
    {
      case "subscribe":
        $contentStr = "感謝您關注【卓錦蘇州】"."\n"."微信號:zhuojinsz"."\n"."卓越錦繡,名城蘇州,我們為您提供蘇州本地生活指南,蘇州相關信息查詢,做最好的蘇州微信平臺。"."\n"."目前平臺功能如下:"."\n"."【1】 查天氣,如輸入:蘇州天氣"."\n"."【2】 查公交,如輸入:蘇州公交178"."\n"."【3】 翻譯,如輸入:翻譯I love you"."\n"."【4】 蘇州信息查詢,如輸入:蘇州觀前街"."\n"."更多內容,敬請期待...";
        break;
      default :
        $contentStr = "Unknow Event: ".$object->Event;
        break;
    }
    $resultStr = $this->responseText($object, $contentStr);
    return $resultStr;
  }
  
  public function responseText($object, $content, $flag=0)
  {
    $textTpl = "<xml>
          <ToUserName><![CDATA[%s]]></ToUserName>
          <FromUserName><![CDATA[%s]]></FromUserName>
          <CreateTime>%s</CreateTime>
          <MsgType><![CDATA[text]]></MsgType>
          <Content><![CDATA[%s]]></Content>
          <FuncFlag>%d</FuncFlag>
          </xml>";
    $resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $flag);
    return $resultStr;
  }
 
 
  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;
    }
  }
}
 
?>

四、測試

php微信公眾平臺開發(四)回復功能開發

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 在线国产一区二区 | 黄毛片视频 | 激情五月激情 | 91精品一区二区 | 欧美精品一区二 | 日韩精品一区二区三区 | 欧美日一区 | 天天干人人 | 国产一区二区精品在线观看 | 99热热热热 | 欧美日韩中文字幕 | 精品国产精品三级精品av网址 | 亚洲国产精品网站 | 精精国产xxxx视频在线观看 | 日韩欧美一区二区三区免费观看 | 欧美日韩成人网 | 国产最新视频 | 亚洲综合色成在线播放 | 亚洲综合大片69999 | 国产中文视频 | 色天天综合| 人人爱夜夜爽日日视频 | 成人伊人 | 免费国产黄色大片 | 久久亚洲精品中文字幕 | 国产91精品一区二区绿帽 | 91精品国产综合久久福利软件 | 一区二区三区免费 | 91综合国产 | 伊人av成人 | 国产成人久久 | 亚洲一区在线播放 | 人人做人人澡人人爽欧美 | 欧美一级在线观看 | 人妖一区| 性网站在线 | 天天舔日日干 | 久久精彩 | 精品在线视频播放 | 中日韩午夜理伦电影免费 | 无码日韩精品一区二区免费 |