微信公众账号开发问题(PHP)

if(strcmp($Msgevent,"subscribe")==0){//订阅事件$event=$postObj->Event;}if(strcmp($event,"... if (strcmp($Msgevent, "subscribe") == 0){ //订阅事件 $event = $postObj->Event; } if (strcmp($event, "CLICK") == 0 ) { $event = $postObj->EventKey; } //菜单的自定义的key值,可以根据此值判断用户点击了什么内容,从而推送不同信息 调试中可以识别$postObj->Event为CLICK,但不能识别 $postObj->EventKey。换句话说只有把后一个if语句注销后整个代码才不会出现异常,急求!
上面比较乱,这整理一下
调试中可以识别$postObj->Event为CLICK,但不能识别 $postObj->EventKey。换句话说只有把后一个if语句注销后整个代码才不会出现异常,急求!
展开
 我来答
xiii130
推荐于2016-05-06 · 知道合伙人软件行家
xiii130
知道合伙人软件行家
采纳数:817 获赞数:2867
爱好编程,在工作中积累了比较丰富的经验。愿与大家共同进步。

向TA提问 私信TA
展开全部

呃,我觉得代码逻辑好像有些问题


在判断微信那边判断动作的顺序我想应该是


switch($postObj->MsgType){
    case 'event':
        switch($postObj->Event){
            case 'subscribe':
                //code
            break;
            case 'click':
                switch($postObj->EventKey){
                    //code
                }
            break;
        }
    break;
}
更多追问追答
追问
我想问一下,为什么可以运行到case ‘click',但一有$postObj->EventKey就会出错,这是什么情况
追答
报的什么错啊,贴个消息呢

你确定你的事件来源是click么

你可以先 var_dump($postObj); 看看里边有没有eventkey这个属性
莘赡05V
2018-08-01 · 知道合伙人软件行家
莘赡05V
知道合伙人软件行家
采纳数:1397 获赞数:3710
毕业安徽理工大学

向TA提问 私信TA
展开全部
PHP就是按照顺序从上往下执行的,你可以看看代理模式,看看能不能优化
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pipipp40
2018-11-15
知道答主
回答量:4
采纳率:0%
帮助的人:3181
展开全部
//1.获取到微信推送过来post数据(xml格式)
//$postArr = $GLOBALS['HTTP_RAW_POST_DATA'];
$postArr = file_get_contents("php://input");
$postObj = simplexml_load_string( $postArr );

if( strtolower( $postObj->MsgType ) == 'event' ){
if( strtolower( $postObj->Event ) == 'subscribe' ){
$FromUserName = $postObj->ToUserName;
$ToUserName = $postObj->FromUserName;
$CreateTime = time();
$MsgType = "text";
$content = "123";
//$content = config('wxreply.wx_content');
$template = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>";
echo sprintf($template,$ToUserName,$FromUserName,$CreateTime,$MsgType,$content);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小猪就吃肉
2015-10-24 · 超过16用户采纳过TA的回答
知道答主
回答量:93
采纳率:0%
帮助的人:32.2万
展开全部
啥问题呢。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_風逸飛
2015-11-02 · TA获得超过696个赞
知道小有建树答主
回答量:1156
采纳率:25%
帮助的人:430万
展开全部
看不到你的问题. 不知道如何回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式