微信公众号接收文本消息和返回消息

按照微信公众号的开发文档,将数据以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一下