为了账号安全,请及时绑定邮箱和手机立即绑定

我的被关注后回复不出来

    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 回答

去了空格也不行

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

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

1 回复 有任何疑惑可以回复我~
#1

qq________零_0

这个算是已经优化好的 已采纳
2018-11-22 回复 有任何疑惑可以回复我~

怎么换的 我也是一脸蒙蔽

0 回复 有任何疑惑可以回复我~
#1

Jonlinc

xml模板中的[]不能有空格就可以了
2018-08-23 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~
#1

qq_独照_0

怎么换的 我现在也是不行
2018-07-27 回复 有任何疑惑可以回复我~

我的是tp5框架的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP实现微信公众平台开发—提升篇
  • 参与学习       64946    人
  • 解答问题       371    个

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

进入课程

我的被关注后回复不出来

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号