七牛云文件上传

require_once __DIR__.'/../../qiniu/autoload.php';


   /**
     * 上传文件
     */
    public function imageupload() {
        $imagefileinfo = $_FILES;
        $res = $this->uploadImg($imagefileinfo['images']['tmp_name']);
        if($res){
            $status = 'success';
            $info = $res;
            $msg = '';
        }else{
            $status = 'error';
            $info = (object)[];
            $msg = 'File upload failed!';
        }
        return $this->echoJson([
            'status' => $status,
            'info' => $info,
            'msg' => $msg
        ]);
    }

 /*
     * @ 上传远端图片
     * @ params $imgUrl 图片地址
     * */
    public function uploadImg($imgUrl)
    {
        #读取网上图片内容
        $Data = self::getData($imgUrl);
        //删除图片缓存
        unlink($imgUrl);

        $auth  = new Auth($this->access_key, $this->secret_key);

        $token = $auth->uploadToken($this->bucket);

        #上传图片
        $key   = 'headimgUrl_'.microtime(true).'.jpg';
        $up    = new UploadManager();
        $mime  = 'image/jpeg';
       /* #上传的音频
        $key   = 'audioUrl_'.microtime(true).'.mp3';
        $up    = new UploadManager();
        $mime  = 'audio/mpeg';
        #上传视频
        $key   = 'VideoUrl_'.microtime(true).'.mp4';
        $up    = new UploadManager();
        $mime  = 'video/mp4';
*/
        list($rest, $err) = $up->put($token, $key, $Data, null, $mime);
        if ($err) {
//            print_r($err);
        } else {
            $domain = $this->config->filedomain;

            #获取上传到七牛云的图片url
            $uploadUrl = $domain.$rest['key'];
            return $uploadUrl;
        }
    }




   /*
     * @ 获取内容
     * @ params $imgUrl 地址
     * */
    protected function getData($Url)
    {
        $substr = substr($Url,0,4);
        if($substr == 'http'){
            $ch = curl_init($Url);

            curl_setopt($ch, CURLOPT_HEADER, 0);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);

            //读取图片信息
            $rawData = curl_exec($ch);
            curl_close($ch);
        }else{
            $rawData = file_get_contents($Url);
        }

        return $rawData;
    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值