/*
* 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教程有兴趣的朋友有所帮助。
微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号