我的被关注后回复不出来

来源:3-2 接收事件订阅与回复响应消息(二)

慕瓜2935129

2018-07-24 11:09

    public function responseMsgs()
    {
        //1.获取到微信推送过来post的数据(xml格式)
//        $postArr = file_get_contents('php://input');
        $postArr = isset($GLOBALS["HTTP_RAW_POST_DATA"]) ? $GLOBALS["HTTP_RAW_POST_DATA"] : file_get_contents("php://input");
        //2.处理消息类型,并设置回复类型和内容
        libxml_disable_entity_loader(true);
        $postObj = simplexml_load_string($postArr, 'SimpleXMLElement', LIBXML_NOCDATA);
        //判断该数据包是否是订阅的事件推送
        if (strtolower($postObj->MsgType) == 'event') {
            //如果是关注subscribe事件
            if (strtolower($postObj->Event == 'subscribe')) {
                //和收到的from、to是相反的
                $toUser   = $postObj->FromUserName;
                $fromUser = $postObj->ToUserName;
                $time     = time();
                $content  = "欢迎关注,常联系。";
                $template = "<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[%s]]></Content></xml>";
                $info     = sprintf($template, $toUser, $fromUser, $time, $content);
                //回复用户消息
                $info     = preg_replace('/[ ]/', '', $info);//去掉空格
                echo $info;
            }
        }
    }


写回答 关注

6回答

  • 晴天36
    2018-08-30 00:02:24
    已采纳

    去了空格也不行

  • 江海豪
    2018-11-02 01:31:48

    可以了 谢谢  真的是空格, , 好坑.. 用你的responseMsgs()  方法就可以了

  • 慕瓜2935129
    2018-09-01 22:15:57

    我是看别人博客才知道的,

    地址:https://blog.csdn.net/king_jie0210/article/details/72598511

    qq____...

    这个算是已经优化好的 已采纳

    2018-11-22 08:38:34

    共 1 条回复 >

  • qq_独照_0
    2018-07-27 14:18:26

    怎么换的 我也是一脸蒙蔽

    Jonlin...

    xml模板中的[]不能有空格就可以了

    2018-08-23 18:22:55

    共 1 条回复 >

  • 慕瓜2935129
    2018-07-26 17:56:14

    从代码上我真的看不出哪里有bug,但是我换一下代码结构就可以了,真坑。

    qq_独照_...

    怎么换的 我现在也是不行

    2018-07-27 17:50:56

    共 1 条回复 >

  • 慕瓜2935129
    2018-07-24 11:09:40

    我的是tp5框架的

PHP实现微信公众平台开发—提升篇

本课程详细讲解了接收微信用户发送的消息和接收订阅关注的事件推送

64947 学习 · 371 问题

查看课程

相似问题