`
hanbaohong
  • 浏览: 386317 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

微信企业号开发模式的PHP代码

    博客分类:
  • PHP
阅读更多
<?php
include_once "WXBizMsgCrypt.php";
$encodingAesKey = "请修改";
$token = "请修改";
$corpId = "请修改";
$wxcpt = new WXBizMsgCrypt($token, $encodingAesKey, $corpId); 
//开启开发模式时的代码
//$sVerifyMsgSig = $_GET["msg_signature"];
//$sVerifyTimeStamp = $_GET["timestamp"];
//$sVerifyNonce = $_GET["nonce"];
//$sVerifyEchoStr = $_GET["echostr"]; 
//if($sVerifyEchoStr){  
//	$sEchoStr = "";  
//	$errCode = $wxcpt->VerifyURL($sVerifyMsgSig, $sVerifyTimeStamp, $sVerifyNonce, $sVerifyEchoStr, $sEchoStr);  
//	if ($errCode == 0) {  
//		print($sEchoStr);   
//	} else {  
//		print($errCode . "\n\n");  
//	}  
//	exit;
//} 

$sReqMsgSig = $_GET['msg_signature'];  
$sReqTimeStamp = $_GET['timestamp'];  
$sReqNonce = $_GET['nonce'];  
$sReqData = file_get_contents("php://input");  

$sMsg = "";
$errCode = $wxcpt->DecryptMsg($sReqMsgSig, $sReqTimeStamp, $sReqNonce, $sReqData, $sMsg);  
if ($errCode == 0) {   
	$xml = new DOMDocument();  
	$xml->loadXML($sMsg);
	$reqToUserName = $xml->getElementsByTagName('ToUserName')->item(0)->nodeValue;  
	$reqFromUserName = $xml->getElementsByTagName('FromUserName')->item(0)->nodeValue;
	$reqCreateTime = $xml->getElementsByTagName('CreateTime')->item(0)->nodeValue;
	$reqMsgType = $xml->getElementsByTagName('MsgType')->item(0)->nodeValue; 
	if($reqMsgType=="event"){
		$reqContent="";
		$reqEvent = $xml->getElementsByTagName('Event')->item(0)->nodeValue;
		if($reqEvent=="click"){
			$reqContent = $xml->getElementsByTagName('EventKey')->item(0)->nodeValue;
			$reqAgentID = $xml->getElementsByTagName('AgentID')->item(0)->nodeValue;
		}
	}else{
		$reqContent = $xml->getElementsByTagName('Content')->item(0)->nodeValue;
		$reqMsgId = $xml->getElementsByTagName('MsgId')->item(0)->nodeValue;  
	}
	
	//file_put_contents('smg_response.txt', $sMsg);
	
	switch($reqContent){  
		case "1":  
			include_once "wxTest.php";
			$mycontent=$res;  
			break;  
		case "2":  
			$mycontent="您好,测试二!";  
			break;  
		case "3":  
			$mycontent="您好,测试三!";  
			break;  
		default :  
			$mycontent=$reqContent; 
			break;  
	}

	$sRespData =   
	"<xml>  
	<ToUserName><![CDATA[".$reqFromUserName."]]></ToUserName>  
	<FromUserName><![CDATA[".$corpId."]]></FromUserName>  
	<CreateTime>".sReqTimeStamp."</CreateTime>  
	<MsgType><![CDATA[text]]></MsgType>  
	<Content><![CDATA[".$mycontent."]]></Content>  
	</xml>";  
	$sEncryptMsg = ""; 
	$errCode = $wxcpt->EncryptMsg($sRespData, $sReqTimeStamp, $sReqNonce, $sEncryptMsg);  
	if ($errCode == 0) {
		print($sEncryptMsg);  
	} else {  
		print($errCode . "\n\n");  
	}
} else {  
	print($errCode . "\n\n");  
} 
?>

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics