zoukankan      html  css  js  c++  java
  • 微信公众号开发第七课 微信实现几个常见功能

    微信中可开发功能主要是查询类占多数,对于服务号由于接口更多实现功能也更多,但是个人订阅号能够实现功能就有限的很。下面就提功能几个常见功能函数,都是我网上找的算不上原创,方便大家引用吧。

    1.机器人,这个有小黄鸡类似功能

     function xiaojo($keyword){
    
            $curlPost=array("chat"=>$keyword);
            $ch = curl_init();//初始化curl
            curl_setopt($ch, CURLOPT_URL,'http://www.xiaojo.com/bot/chata.php');//抓取指定网页
            curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
            curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
            curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
            curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
            $data = curl_exec($ch);//运行curl
            curl_close($ch);
            if(!empty($data)){
                return $data;
            }else{
                $ran=rand(1,5);
                switch($ran){
                    case 1:
                        return "小鸡鸡今天累了,明天再陪你聊天吧。";
                        break;
                    case 2:
                        return "小鸡鸡睡觉喽~~";
                        break;
                    case 3:
                        return "呼呼~~呼呼~~";
                        break;
                    case 4:
                        return "你话好多啊,不跟你聊了";
                        break;
                    case 5:
                        return "你真的好无聊";
                        break;
                    default:
                        return "今天就不聊了";
                        break;
                }
            }
        }

    2.查询图书和电影,这个来自豆瓣api

    function douban_book($tag='三重门'){
        $str = file_get_contents("http://api.douban.com/v2/book/search?count=1&q=".urlencode($tag));
        $obj = json_decode($str,1);
        if($obj['books']){
        $author =  $obj['books'][0]['author'][0];
        $url=$obj['books'][0]['alt'];
        $con=$obj['books'][0]['summary'];
        $ss = "<a href='$url'>查看$tag</a>--".$author."--".$con;
        return mb_substr($ss,0,600);
        }else{
        return '没有找到这本书';
        }
    }
    function douban_film($tag='功夫'){
        $str=file_get_contents("http://api.douban.com/v2/movie/search?count=1&q=".urlencode($tag));
        $obj = json_decode($str,1);
        if($obj['subjects']){
        $str2 = $obj['subjects'][0]['alt'];
        return "<a href='$str2'>查看$tag</a>";
        }else{
        return "没有找到电影";
        }
    }

    3.天气查询

    function tq($site="深圳"){//支持邮编 区号 地址 
        $key = "http://api2.sinaapp.com/search/weather/?appkey=0020130430&appsecert=fa6095e113cd28fd&reqtype=text&keyword=".urlencode($site);
        $wether = file_get_contents($key);
        $str =  json_decode($wether,1);
        return $str['text']['content'];
    }

    4.ip归属地,来自淘宝

    function ip($ip=''){
        if(empty($ip)){
            return null;
        }else{
            if(function_exists('file_get_contents')){
        $key =file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);
        }else{
    $ch = curl_init();
    $timeout = 5;
    curl_setopt ($ch, CURLOPT_URL,"http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $key = curl_exec($ch);
    curl_close($ch);        
        }
        return json_decode($key);
        }        
    
    }

    5.身份证

    function cid($phone=''){
    $appkey='10132';
    $sign='a9188406bf366b55d58c97b920814f6e';
    $s =  file_get_contents("http://api.k780.com/?app=idcard.get&idcard=$phone&appkey=$appkey&sign=$sign&format=json");
    $ss = json_decode($s,1);
    if($ss['success']==0){
        return $ss["msg"];
    }else{
        return $ss['result']['att'].'-'.$ss['result']['sex'];
    }
    }

    6.翻译

    //百度翻译
    function baiduDic($word,$from="auto",$to="auto"){
            
            //首先对要翻译的文字进行 urlencode 处理
            $word_code=urlencode($word);
            
            //注册的API Key
            $appid="PmjnglYuzie9PsMosP45qxyh";
            
            //生成翻译API的URL GET地址
            $baidu_url = "http://openapi.baidu.com/public/2.0/bmt/translate?client_id=".$appid."&q=".$word_code."&from=".$from."&to=".$to;
            
            $text=json_decode(language_text($baidu_url));
    
            $text = $text->trans_result;
    
            return $text[0]->dst;
        }
            
    function language_text($url){
    
            if(!function_exists('file_get_contents')){
    
                $file_contents = file_get_contents($url);
    
            }else{
                    
                //初始化一个cURL对象
                $ch = curl_init();
    
                $timeout = 5;
    
                //设置需要抓取的URL
                curl_setopt ($ch, CURLOPT_URL, $url);
    
                //设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上
                curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    
                //在发起连接前等待的时间,如果设置为0,则无限等待
                curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    
                //运行cURL,请求网页
                $file_contents = curl_exec($ch);
    
                //关闭URL请求
                curl_close($ch);
            }
    
            return $file_contents;
        }

    7.手机归属地

    function phone($phone='13823459876'){
    $appkey='10132';
    $sign='a9188406bf366b55d58c97b920814f6e';
    $s =  file_get_contents("http://api.k780.com/?app=phone.get&phone=$phone&appkey=$appkey&sign=$sign&format=json");
    $ss = json_decode($s,1);
    if($ss['success']==0){
        return $ss["msg"];
    }else{
        return $ss["result"]["att"]."-".$ss["result"]["ctype"];
    }
    }

    微信公众号更多功能都要有特定api实现,对于订阅号,能实现整合资源实在不多。当然看到有人用html5实现一些功能,基本上都是借助这个平台,实际没有多少关于微信的。

  • 相关阅读:
    pycharm下载与安装
    IOS 字体表
    iOS 在 ARC 环境下 dealloc 的使用、理解误区
    微信支付的开发
    Undefined symbols for architecture i386:和"_OBJC_CLASS_$_xx", referenced from:问题解决方法
    soureTree使用
    UINavigationController 直接pop到指定controllerView的方法
    OBC: NSString 与 NSArray 互转
    NSArray的containsObject的使用时注意的问题
    IOS 自定义导航栏标题和返回按钮标题
  • 原文地址:https://www.cnblogs.com/logoove/p/3413627.html
Copyright © 2011-2022 走看看