> 백엔드 개발 > PHP 튜토리얼 > WeChat 자동 응답 코드

WeChat 자동 응답 코드

WBOY
풀어 주다: 2016-07-30 13:29:43
원래의
1950명이 탐색했습니다.
/*
		* 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(!empty($postStr))
				{
					$postObj = simplexml_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);
					$fromUsername = $postObj ->FromUserName;
					$tpUsername	  = $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" ;
						$contentStr = "Hi 欢迎你的关注!";
						$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;
				}
			}
		}
로그인 후 복사

저작권 안내: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.

위 내용은 관련 내용을 포함해 위챗 자동 응답 코드를 소개한 내용이 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿