php 下载七牛文件上传,laravel下封装的七牛云图片上传下载方法

$fileName    文件名

$filePath    文件路径

我用的是七牛云私有空间,如果用公有空间也一样,只是不需要下载方法而已。<?php

namespace App\Http\Controllers;

use Qiniu\Auth;

use Qiniu\Storage\BucketManager;

use Qiniu\Storage\UploadManager;

class QiniuApiController extends Controller

{

public $auth;

public $bucket;

public $uploadManager;

public $backetManager;

public function __construct()

{

$this->auth = new Auth(env('ACCESS_KEY'),env('SECRET_KEY'));

$this->bucket = env('BUCKET');

$this->uploadManager = new UploadManager();

$this->backetManager = new BucketManager($this->auth);

}

/**

*  上传文件到七牛云

* @param $fileName     文件名

* @param $filePath     文件路径

* @return mixed

* @throws \Exception

*/

public function uploadFile($fileName,$filePath)

{

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

list($res,$err) = $this->uploadManager->putFile($token,$fileName,$filePath);

if ($err !== null){

return $err;

}else{

return $res;

}

}

/**

* 下载七牛云的数据,并添加限时token

* @param $fileName     传入需要下载的文件名

* @return string       返回链接字符串

*/

public function downloadFile($fileName)

{

if(strpos($fileName,'http://') === false && strpos($fileName,env('QINIU_DOMAIN')) ===false){

$baseUrl = 'http://'.env('QINIU_DOMAIN').'/'.$fileName;

}else if (strpos($fileName,'http://') === false){

$baseUrl = 'http://'.$fileName;

}else{

$baseUrl = $fileName;

}

$authUrl = $this->auth->privateDownloadUrl($baseUrl);

return $authUrl;

}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值