2013年微信公众号对接的原版代码

<?php

define("TOKEN","weixin");
$wechatObj=new wechatCallbackapiTest()
$wechatObj->valid();

class wechatCallbackapiTest{
	public function valid(){
		$echoStr=$_GET['echostr'];
		if($this->checkSignature()){
			echo $echoStr;
			exit;
		}
	}
	public function responseMsg(){
		$postStr=$GLOBALS["HTTP_RAW_POST_DATA"];
		
		if(!empty($postStr)){
			$postObj=simple_load_string($postStr,'SimpleXMLElment',LIBXML_NOCDATA);
			$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";
				$contentStr="Welcome to wechat world!";
				$resultStr=sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr);
				echo $resultStr;
			}else{
				echo "Input something ...";
			}
		}else{
			echo "";
			exit;
		}
	}
	public 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;
		}
	}	
}

?>
define("TOKEN","sample");
$wechatObj=new wechatCallbackapiTest();
$wechatObj->valid();

class wechatCallbackapiTest{
	public function valid(){
		$echoStr=$_GET['echostr'];
		if($this->checkSignature()){
			echo $echoStr;
			exit;
		}
	}
	public function responseMsg(){
		$postStr=$GLOBALS["HTTP_RAW_POST_DATA"];
		if(!empty($postStr)){
			$postObj=simple_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);
			$fromUsername=$postObj->FromUserName;
			$toUsername=$postObj->toUsername;
			$keyword=trim($postObj->Content);
			$time=time();
			$textTpl="";
			
			if(!empty($keyword)){
				$msgType="text";
				$contentStr="欢迎光临";
				$resultStr=sprintf($textTpl,$fromUsername,$time,$msgType,$contentStr);
				echo $resultStr;
			}else{
				echo "输入中。。。";
			}
		}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;
		}
	}
}

猜你喜欢

转载自blog.csdn.net/taotaobaobei/article/details/81212539