亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法

 更新時(shí)間:2016年09月23日 14:20:26   作者:smiling  
這篇文章主要介紹了php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法,涉及基于微信消息處理接口的調(diào)用相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法。分享給大家供大家參考,具體如下:

微信的api現(xiàn)在己經(jīng)強(qiáng)大到可以隨意調(diào)用我們網(wǎng)站或指定數(shù)據(jù)庫(kù)的內(nèi)容進(jìn)行自能回復(fù)現(xiàn)推送消息了,這里就來(lái)給大家介紹一個(gè)微信開(kāi)發(fā)的筆記.

發(fā)送1,2,3,7測(cè)試相應(yīng)的消息,菜單模式需要升級(jí)為服務(wù)號(hào),或者訂閱人數(shù)超過(guò)500以上.

1. 用戶(hù)發(fā)送的消息都是通過(guò)你提交的開(kāi)發(fā)者URL來(lái)接收,這里訂閱號(hào)就可以搞定,發(fā)送過(guò)來(lái)的都是xml格式數(shù)據(jù),需要解析,代碼如下:

$data = $GLOBALS["HTTP_RAW_POST_DATA"];
if (!emptyempty($data)) {//接收消息并處理
$xml = (array)simplexml_load_string($data, ‘SimpleXMLElement', LIBXML_NOCDATA);
return $xml;
}

回復(fù)也是需要返回XML的數(shù)據(jù)格式.

2. 主動(dòng)發(fā)送給用戶(hù)消息,查詢(xún)用戶(hù)信息,創(chuàng)建自定義菜單(現(xiàn)在訂閱號(hào)也可以用),以及一些高級(jí)功能,都是需要獲取appid 和 AppSecret 以便得到 access_token.

access_token 這東西,除接收信息,每個(gè)接口都要用到,access_token 的時(shí)間為 7200毫秒過(guò)期需要重新獲取.

更多請(qǐng)參考:http://mp.weixin.qq.com/wiki/index.php?title=%E9%A6%96%E9%A1%B5.

目前我已經(jīng)實(shí)現(xiàn)了,接收消息,自動(dòng)判斷回復(fù)相應(yīng)消息新聞,創(chuàng)建自定義菜單,點(diǎn)擊自定義菜單后執(zhí)行相應(yīng)操作,用戶(hù)列表之類(lèi),感覺(jué)目前開(kāi)發(fā)模式和訂閱模式?jīng)]什么區(qū)別.

這里有一個(gè)測(cè)試回復(fù)的測(cè)試?yán)?代碼如下:

<?php
/**
 * wechat php test
 */
//define your token
define("TOKEN", "你的申請(qǐng)上的token");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();
class wechatCallbackapiTest
{
 public function valid()
  {
    $echoStr = $_GET["echostr"];
    //valid signature , option
    if($this->checkSignature()){
     $this->responseMsg();
     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;
        $keyword = trim($postObj->Content);
        $time = time();
  $msgType = "text";
        $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(!emptyempty( $keyword ))
        {
         $contentStr = $this->keyrep($keyword);
   if( emptyempty($contentStr) )
   {
   $contentStr ="你是故意的吧,沒(méi)文化真可怕";//你是故意的吧,沒(méi)文化真可怕;
   }
   //$contentStr = @iconv('UTF-8','gb2312',$keyword);
         $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
         echo $resultStr;
        }else{
         $contentStr = '沒(méi)文化真可怕,居然不會(huì)打字!';//$this->keyrep($keyword);
         //$contentStr = @iconv('UTF-8','gb2312',$keyword);
   $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
         echo $resultStr;
        }
    }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;
 }
 }
 function keyrep($key)
 {
 //return $key;
 if( $key=='嗨' || $key=='在嗎' || $key=='你好' ){
  $mt = mt_rand(1,17);
  $array = array(1=>'自殺中,稍后再說(shuō)...',2=>'有事找我請(qǐng)大叫!',3=>'我正在裸奔,已奔出服務(wù)區(qū)',4=>'我現(xiàn)在位置:WC; 姿勢(shì):下蹲; 臉部:抽搐; 狀態(tài):用力中。。。。',5=>'去吃飯了,如果你是帥哥,請(qǐng)一會(huì)聯(lián)系我,如果你是美女...............就算你是美女,我也要先吃飽肚子啊',6=>'
洗澡中~謝絕旁觀?。_^0',7=>'有熊出?],我去誘捕,盡快回來(lái)。',8=>'你好,我是500,請(qǐng)問(wèn)你是250嗎?',9=>'喂!亂碼啊,再發(fā)',10=>'
不是我不理你,只是時(shí)間難以抗拒!',11=>'你剛才說(shuō)什么,我沒(méi)看清楚,請(qǐng)?jiān)僬f(shuō)一遍!',12=>'發(fā)多幾次啊~~~發(fā)多幾次我就回你。',13=>'此人已死,有事燒紙!',14=>'乖,不急哦…',15=>'你好.我去殺幾個(gè)人,很快回來(lái).',16=>'本人已成仙?有事請(qǐng)發(fā)煙?佛說(shuō)有煙沒(méi)火成不了正果?有火沒(méi)煙成不了仙。',17=>'
你要和我說(shuō)話?你真的要和我說(shuō)話?你確定自己想說(shuō)嗎?你一定非說(shuō)不可嗎?那你說(shuō)吧,這是自動(dòng)回復(fù),反正我看不見(jiàn)其實(shí)我在~就是不回你拿我怎么著?'
);
  return $array[$mt];
 }
 if( $key=='靠' || $key=='啊' || $key=='阿' )
 {
  $mt = mt_rand(1,19);
  $array = array(1=>'人之初?性本善?玩心眼?都滾蛋。',2=>'今后的路?我希望你能自己好好走下去?而我 坐車(chē)',3=>'笑話是什么?就是我現(xiàn)在對(duì)你說(shuō)的話。',4=>'人人都說(shuō)我丑?其實(shí)我只是美得不明顯。',5=>'A;豬是怎么死的?B;你還沒(méi)死我怎么知道',6=>'
奧巴馬已經(jīng)干掉和他同姓的兩個(gè)人?奧特曼你要小心了。 ',7=>'有的人活著?他已經(jīng)死了?有的人活著?他早該死了。',8=>'"妹妹你坐船頭?哥哥我岸上走"據(jù)說(shuō)很傻逼的人看到都是唱出來(lái)的。',9=>'我這輩子只有兩件事不會(huì)?這也不會(huì)?那也不會(huì)。',10=>'
過(guò)了這個(gè)村?沒(méi)了這個(gè)店?那是因?yàn)橛蟹值辍?,11=>'我以為你只是個(gè)球?沒(méi)想到?你真是個(gè)球。',12=>'你終于來(lái)啦,我找你N年了,去火星干什么了?我現(xiàn)在去冥王星,回頭跟你說(shuō)個(gè)事,別走開(kāi)啊',13=>'你有權(quán)保持沉默,你所說(shuō)的一切都將被作為存盤(pán)記錄。你可以請(qǐng)代理服務(wù)器,如果請(qǐng)不起網(wǎng)絡(luò)會(huì)為你分配一個(gè)。',14=>'本人正在被國(guó)際刑警組織全球范圍內(nèi)通緝,如果您有此人的消息,請(qǐng)撥打當(dāng)?shù)貓?bào)警電話',15=>'洗澡中~謝絕旁觀??!^_^0',16=>'嘀,這里是移動(dòng)秘書(shū), 美眉請(qǐng)?jiān)侔l(fā)一次,我就與你聯(lián)系;姐姐請(qǐng)?jiān)侔l(fā)兩次,我就與你聯(lián)系;哥哥、弟弟就不要再發(fā)了,因?yàn)榘l(fā)了也不和你聯(lián)系!',17=>'
其實(shí)我在~就是不回你拿我怎么著?',18=>'你剛才說(shuō)什么,我沒(méi)看清楚,請(qǐng)?jiān)僬f(shuō)一遍!',19=>'乖,不急。。。');
  return $array[$mt];
 }
 if( $key =='請(qǐng)問(wèn)' )
 {
  $mt = mt_rand(1,5);
  $array = array(1=>'"我臉油嗎"反光??反正我不清楚',2=>'走,我請(qǐng)你吃飯',3=>'此人已死,有事燒紙!',4=>'喂!什么?。y碼啊,再發(fā)',5=>'笑話是什么??就是我現(xiàn)在對(duì)你說(shuō)的話。');
  return $array[$mt];
 }
 return "";
 }
 function keylist()
 {
 $array = array(1=>'嗨',2=>'你好',3=>'靠',4=>'在嗎',5=>'請(qǐng)問(wèn)');
 }
}
?>

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP微信開(kāi)發(fā)技巧匯總》、《PHP編碼與轉(zhuǎn)碼操作技巧匯總》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語(yǔ)法入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • laravel 5.1下php artisan migrate的使用注意事項(xiàng)總結(jié)

    laravel 5.1下php artisan migrate的使用注意事項(xiàng)總結(jié)

    這篇文章主要給大家總結(jié)介紹了在laravel 5.1下php artisan migrate的使用注意事項(xiàng),文中介紹的非常詳細(xì),對(duì)大家使用php artisan migrate具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-06-06
  • php 根據(jù)URL下載遠(yuǎn)程圖片、壓縮包、pdf等文件到本地

    php 根據(jù)URL下載遠(yuǎn)程圖片、壓縮包、pdf等文件到本地

    這篇文章主要介紹了php 根據(jù)URL下載遠(yuǎn)程圖片、壓縮包、pdf等文件到本地 ,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 圖文詳解laravel多對(duì)多關(guān)聯(lián)模型

    圖文詳解laravel多對(duì)多關(guān)聯(lián)模型

    多對(duì)多就相當(dāng)于一個(gè)專(zhuān)題Topic有多個(gè)文章,但是這多個(gè)文章又屬于多個(gè)專(zhuān)題,下面這篇文章主要給大家介紹了關(guān)于laravel多對(duì)多關(guān)聯(lián)模型的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • ThinkPHP采用GET方式獲取中文參數(shù)查詢(xún)無(wú)結(jié)果的解決方法

    ThinkPHP采用GET方式獲取中文參數(shù)查詢(xún)無(wú)結(jié)果的解決方法

    這篇文章主要介紹了ThinkPHP采用GET方式獲取中文參數(shù)查詢(xún)無(wú)結(jié)果的解決方法,需要的朋友可以參考下
    2014-06-06
  • Yii2框架可逆加密簡(jiǎn)單實(shí)現(xiàn)方法

    Yii2框架可逆加密簡(jiǎn)單實(shí)現(xiàn)方法

    這篇文章主要介紹了Yii2框架可逆加密簡(jiǎn)單實(shí)現(xiàn)方法,涉及Yii框架encryptByPassword()與decryptByPassword()函數(shù)簡(jiǎn)單使用方法,需要的朋友可以參考下
    2017-08-08
  • 解析php DOMElement 操作xml 文檔的實(shí)現(xiàn)代碼

    解析php DOMElement 操作xml 文檔的實(shí)現(xiàn)代碼

    本篇文章是對(duì)在php中DOMElement 操作xml 文檔的實(shí)現(xiàn)進(jìn)行了分析介紹。需要的朋友參考下
    2013-05-05
  • php按百分比生成縮略圖的代碼分享

    php按百分比生成縮略圖的代碼分享

    最近的一個(gè)網(wǎng)站項(xiàng)目中上傳圖片需要生成縮略圖,以減小列表頁(yè)的大小,減緩服務(wù)器壓力。一向崇尚簡(jiǎn)潔明了和實(shí)用的我,看到網(wǎng)上搜到的一個(gè)個(gè)長(zhǎng)長(zhǎng)的php縮略圖類(lèi)的時(shí)候,感到非常痛苦。我承認(rèn)他們寫(xiě)的功能是強(qiáng)大一些,但是我不需要這么復(fù)雜的功能
    2014-05-05
  • PHP制作登錄異常ip檢測(cè)功能的實(shí)例代碼

    PHP制作登錄異常ip檢測(cè)功能的實(shí)例代碼

    下面小編就為大家?guī)?lái)一篇PHP制作登錄異常ip檢測(cè)功能的實(shí)例代碼。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-11-11
  • laravel修改用戶(hù)模塊的密碼驗(yàn)證實(shí)現(xiàn)

    laravel修改用戶(hù)模塊的密碼驗(yàn)證實(shí)現(xiàn)

    本文主要介紹了laravel修改用戶(hù)模塊的密碼驗(yàn)證實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • PHP版微信公眾平臺(tái)紅包API

    PHP版微信公眾平臺(tái)紅包API

    這篇文章主要介紹了PHP版微信公眾平臺(tái)微信API類(lèi),目前主要實(shí)現(xiàn)了微信紅包接口,陸續(xù)會(huì)繼續(xù)進(jìn)行更新,非常的實(shí)用,這里推薦給小伙伴們,有需要的朋友可以參考下。
    2015-04-04

最新評(píng)論