【原创】PHP 调用新浪接口将长链接转为短链接 t.cn

需求把长链接生成新浪短链接

    /**
     * 调用新浪接口将长链接转为短链接
     * @param  string        $source     默认调用官方的key
     * @param  array|string  $url_long  长链接,支持多个转换(需要先执行urlencode)
     * @param  string        $api         默认调用新浪微博的接口 自定义需要换成开发文档的地址
     * @return array
     */

        public function getSinaShortUrl($url_long , $source = "2849184197", $api = "http://api.weibo.com/2/short_url/shorten.json" )
        {
            // 参数检查
            if(empty($source) || !$url_long){
                return false;
            }
            // 参数处理,字符串转为数组
            if(!is_array($url_long)){
                $url_long = array($url_long);
            }
            // 拼接url_long参数请求格式
            $url_param = array_map(function($value){
                return '&url_long='.urlencode($value);
            }, $url_long);
            $url_param = implode('', $url_param); 
            // 请求url
            $request_url = sprintf($api.'?source=%s%s', $source, $url_param);
            $result = [];
            // 执行请求
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_URL, $request_url);
            $data = curl_exec($ch);
            if($error=curl_errno($ch)){
                return false;
            }
            curl_close($ch);
            $result = json_decode($data, true);
            return $result;
        }

原创文章 未经许可 禁止搬运!

Last modification:April 24th, 2019 at 06:16 pm
如果觉得我的文章对你有用,请随意赞赏

5 comments

  1. Qicloud

    可是我想搬OωO你会同意的吧,反正都偷了这么多了

    1. Reaper
      @Qicloud

      我从不讨厌搬东西,我讨厌的是搬东西还写着自己原创,来源也写自己的人

  2. 陵飞

    非常棒的一篇文章,用处很大!

    1. 1
      @陵飞

      鸡毛没有

      1. lingfei
        @1

        我写了个防红

Leave a Comment