返回用户发送的文本消息,修改sample.php
<?php
//企业号返回用户的文本消息,替换模板的sample.php
//@author 易伟
//@date 2014-12-13
//更改corpID,token和encodingAesKey
include_once "WXBizMsgCrypt.php";
$encodingAesKey = "H8Ycg6SOGJbrBlfpZlLXe5cREFdzZhts5S0ZjKsbQrV";
$token = "5rjINmS5M1fJa2I76GOs3qocL8CjMjm";
$corpId = "xxxx";
$wxcpt = new WXBizMsgCrypt($token, $encodingAesKey, $corpId);
$sReqMsgSig = $_GET["msg_signature"];
$sReqTimeStamp = $_GET["timestamp"];
$sReqNonce =$_GET["nonce"];
$sReqData = $GLOBALS["HTTP_RAW_POST_DATA"];
$sMsg = ""; // 解析之后的明文
$errCode = $wxcpt->DecryptMsg($sReqMsgSig, $sReqTimeStamp, $sReqNonce, $sReqData, $sMsg);
if ($errCode == 0) {
$postStr=$sMsg;
//以下恢复为普通微信的操作
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$content = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>";
$sRespData= sprintf($textTpl, $fromUsername, $toUsername, $time, $content);
//加密输出
$sEncryptMsg = ""; //xml格式的密文
$errCode = $wxcpt->EncryptMsg($sRespData, $sReqTimeStamp, $sReqNonce, $sEncryptMsg);
if ($errCode == 0) {
echo $sEncryptMsg;
} else {
print("ERR: " . $errCode . "\n\n");
// exit(-1);
}
} else {
print("ERR: " . $errCode . "\n\n");
//exit(-1);
}
?>