按照微信公众号的开发文档,将数据以XML格式返回,但微信上并未收到任何反馈,控制台也未报错!
这是控制台输出的XML格式
根据微信公众号设置的回调地址,设置的文件名字,把当前代码当进去,改成回调地址的文件名,即可完成,具体内容以下有注释。
<?php
header('content-type:text/html;charset=utf8');
/*接受数据*/
$post_obj = simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA'],'SimpleXMLElement',LIBXML_NOCDATA);
$wx_act = new wx_act();
switch ($post_obj->MsgType){
case 'text'://处理文本请求
$wx_act->response_text($post_obj);
break;
case 'event'://处理菜单事件请求
$wx_act->response_event($post_obj);
break;
}
class wx_act{
//处理文本信息
public function response_text($post_obj){
$con = '';
//根据接受文本信息,回复信息
switch ($post_obj->Content){
case 'hello':
$con = '(。・∀・)ノ゙嗨';
break;
case '吃什么呢':
$con = '吃[西瓜]瓜呢!';
break;
case '123':
$con = '456[愉快]';
break;
case '666':
$con = '777[得意]';
break;
case '么么哒':
$con = '木马[亲亲]';
break;
//输入其他文本信息,回复 下面的
default:$con = 'o(╯□╰)o'."\r\n".'别乱输入';
}
$xml = '<xml>'
.'<ToUserName><![CDATA['.$post_obj->FromUserName.']]></ToUserName>'
.'<FromUserName><![CDATA['.$post_obj->ToUserName.']]></FromUserName>'
.'<CreateTime>'.time().'</CreateTime>'
.'<MsgType><![CDATA[text]]></MsgType>'
.'<Content><![CDATA['.$con.']]></Content>'
.'</xml>';
echo $xml;
}
作者:献给正在奋斗你
来源:CSDN
原文:https://blog.csdn.net/qq_39618374/article/details/80618622
版权声明:本文为博主原创文章,转载请附上博文链接!
接受微信公众号事件需要get请求验证,post请求进行业务处理,还有把返回的数据return一下