>  Q&A  >  본문

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;
        }
ringa_leeringa_lee2765일 전687

모든 응답(2)나는 대답할 것이다

  • 黄舟

    黄舟2017-04-11 10:30:59

    少了分号

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

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

    회신하다
    0
  • 迷茫

    迷茫2017-04-11 10:30:59

    syntax error 是很好定位的。仔细阅读报错提示。

    회신하다
    0
  • 취소회신하다