zoukankan      html  css  js  c++  java
  • 微信公众平台开发(96) 多个功能整合

    思路:

    通过用户发送的关键字判断的方式来判断功能,再调用回复相应的内容。
    当一个功能不匹配的时候,则进入下一个功能判断。

    程序示例如下:

    //接收文本消息
    private function receiveText($object)
    {
        $keyword = trim($object->Content);
        //判断天气
        if (strstr($keyword, "天气")){
            $city = str_replace('天气', '', $keyword);
            include("weather.php");
            $content = getWeatherInfo($city);
        //判断笑话
        }else if (strstr($keyword, "笑话")){
            include("joke.php");
            $content = getJokeInfo();
        //判断世界杯
        }else if (strstr($keyword, "世界杯")){
            $content[] = array("Title" =>"2014年巴西世界杯赛程","Description" =>"", "PicUrl" =>"https://images0.cnblogs.com/i/340216/201406/111304544204656.jpg", "Url" =>"http://url.cn/RInu1v");
        //其他默认回复
        }else{
            $content = date("Y-m-d H:i:s",time())."
    技术支持 方倍工作室";
        }
        
        if(is_array($content)){
            if (isset($content[0]['PicUrl'])){
                $result = $this->transmitNews($object, $content);
            }else if (isset($content['MusicUrl'])){
                $result = $this->transmitMusic($object, $content);
            }
        }else{
            $result = $this->transmitText($object, $content);
        }
    
        return $result;
    }

    上述代码使用if else if这样的分支语句实现类别区分,比如发送“深圳天气”之后,

    if (strstr($keyword, "天气")){

    判断文字中包括“天气”二个字,就进入了天气类别,

    剩下还要把“深圳”2个字提取出来,使用字符串替换的方式,把“天气”2个字替换成空(也就是相当于删除)。

    $city = str_replace('天气', '', $keyword);

    这样就得到城市名称了。

    再将天气查询文件包含进来,并且将城市名称传入

    include("weather.php");
    $content = getWeatherInfo($city);

    这样就查询到了深圳的天气预报信息。

    同样的方法,可以将其他功能完整整合进来。 

    ====================================================================

    方倍工作室微信公众平台账号关注方法:
    1. 微信通讯录-添加朋友-查找公众号-搜索“方倍工作室”
    2. 微信通讯录-添加朋友-搜号码-输入“pondbaystudio”
    3. 使用微信扫描下面的二维码

  • 相关阅读:
    linux 经常使用配置
    Binder Proxy技术方案
    Android 通过系统使用NotificationListenerService 监听各种Notification的用法
    苟富贵勿相忘
    使用instantclient_11_2 和PL/SQL Developer工具包连接oracle 11g远程数据库
    JAVA: httpclient 具体解释——第五章;
    Unity入门
    向架构师进军--->怎样编写软件架构文档
    SendMessage、PostMessage原理
    用GDB调试程序(一)
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467475.html
Copyright © 2011-2022 走看看