这里就啰嗦什么了, 直接上代码
/**
- wechat php test
*/
//define your token
define(“TOKEN”,”weixin”);
$wechatObj=newwechatCallbackapiTest();
$wechatObj->responseMsg();
classwechatCallbackapiTest
{
public functionvalid()
{
echoStr= _GET[“echostr”];
//valid signature , option
if($this->checkSignature()){
echo$echoStr;
exit;
}
}
public functionresponseMsg()
{
//get post data, May be due to the different environments
postStr= GLOBALS[“HTTP_RAW_POST_DATA”];
//extract post data
if(!empty($postStr)){
postObj=simplexmlloadstring( postStr,’SimpleXMLElement’,LIBXML_NOCDATA);
fromUsername= postObj->FromUserName;
toUsername= postObj->ToUserName;
keyword=trim( postObj->Content);
$time=time();
$textTpl=”
%s
0
“;
if(!empty($keyword))
{
//这里手动编辑自动回复
$msgType=”text”;
switch($keyword){
case’1’;
$contentStr=”http://www.minxiny.com/”;
break;
case’2’:
$contentStr=”您有什么健康问题呢?请发送关键词,或者关注公众号: hello kitty 获取更多相关健康问题”;
break;
case’3’:
$contentStr=”请搜索小程序 百姓堂 允许获取定位来使用该功能”;
break;
default:
$contentStr=<<< MESG
欢迎访问百年臻阳方,本公众号由广东泓然堂医药有限公司提供,为您的健康提供全方位保障,点击关注有惊喜.
1 访问公司官网
2 咨询健康问题
3 寻找附件的药店
MESG;
break;
}
// $msgType = “text”;
// $contentStr = “欢迎访问百年臻阳方,本公众号由广东泓然堂医药有限公司提供,为您的健康提供全方位保障,点击关注有惊喜”;
resultStr=sprintf( textTpl, fromUsername, toUsername, time, msgType,$contentStr);
echo$resultStr;
}else{
echo”Input something…”;
}
}else{
echo”“;
exit;
}
}
private functioncheckSignature()
{
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;
}
}
}
?>