thinkphp - PHP 微信公众号开发,关键字回复使用switch出错

查看:83
本文介绍了thinkphp - PHP 微信公众号开发,关键字回复使用switch出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

使用php开发微信公众平台,在做关键字回复的时候遇到一个问题,使用if。else if语句没有问题,但是如果换成switch之后,公众平台修改配置的时候就提交不过去了,请问大家有遇到过这种情况吗?
下面是代码:


if (strtolower( $postObj->MsgType ) == 'text') {
            switch ( trim($postObj->Content )) {
                case '电影':
                    $contnet = '最近都没有看过什么电影,真的是没有什么时间啊。';
                    break;
                case '菜':
                    $content = '最喜欢吃红烧肉了,真心不喜欢那些都是骨头和皮没有肉的荤菜。';
                    break;
                case '饮料':
                    $content = '柠檬水,我感觉我对柠檬水上瘾了。'
                    break;
                default:
                    $content = '这不是我们设置的关键字,你再看看?';
                    break;
            }
            $toUser = $postObj->FromUserName;
            $fromUser = $postObj->ToUserName;
            $time = time();
            $msgType = 'text';
            $template = "<xml>
                        <ToUserName><![CDATA[%s]]></ToUserName>
                        <FromUserName><![CDATA[%s]]></FromUserName>
                        <CreateTime>%s</CreateTime>
                        <MsgType><![CDATA[%s]]></MsgType>
                        <Content><![CDATA[%s]]></Content>
                        </xml>";
            $info = sprintf($template, $toUser, $fromUser, $time, $msgType, $content);
            echo $info;
        }

解决方案

少了分号

case '饮料':
                    $content = '柠檬水,我感觉我对柠檬水上瘾了。'
                    break;

碰到这种问题,一般提示语法错误。写代码认真仔细写,不要捉急。

这篇关于thinkphp - PHP 微信公众号开发,关键字回复使用switch出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆