自动回复
public function getpost()
{
//获取用户传送过来的xml
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
file_put_contents('demo.txt',$postStr);
if(!empty($postStr)){
//解析post来的XML为一个对象$postObj
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName; //请求消息的用户
$toUsername = $postObj->ToUserName; //"我"的公众号id
$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>
</xml>";
if($keyword){
$contentStr = $keyword;
//sprintf里的参数要以textTpl里的节点一一对应代替有%s的地方。但是要注意$fromUsername, $toUsername。他们的值是要互换的!
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgtype, $contentStr);
echo $resultStr;
exit();
}
}else {
echo "";
exit;
}
}