thinkphp页面图片视频文件对接存储到七牛云指定目录
1、准备工作
注册七牛云账号,可以有免费的10G储存空间。
到 个人中心-密钥管理 查看 AccessKey 和 SecretKey。
2、SDK 下载
命令行进入到项目根目录,使用 composer 下载文件。
下载成功会在 vendor 目录下多出一个 qiniu 目录。
composer 下输入下面代码
composer require qiniu/php-sdk
3、控制器代码
<?php
namespace app\index\controller;
vendor('../../../vendor/qiniu/php-sdk/autoload.php');
use Qiniu\Auth;
use Qiniu\Storage\UploadManager;
class Test
{
private $accessKey =""; // 你的 AccessKey
private $secretKey = ""; // 你的 SecretKey
private $bucket = ""; // 你在七牛云创建的空间名称
// 上传文件到七牛云
public function uploadToQiniu()
{
if (request()->isPost()) {
$file = $_FILES['file'];
// 截取后缀名
$ext = strchr($file['name'], '.');
// 构建鉴权对象
$auth = new Auth($this->accessKey, $this->secretKey);
// 生成上传 Token
$token = $auth->uploadToken($this->bucket);
// 要上传文件的本地路径
$filePath = $file['tmp_name'];
// 上传到七牛后保存的文件名
$key = 'myimg/video/'.time().uniqid().$ext; //这里可以定义上传到七牛的制定目录路径
// 初始化 UploadManager 对象并进行文件的上传。
$uploadMgr = new UploadManager();
// 调用 UploadManager 的 putFile 方法进行文件的上传。
list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
if ($err !== null) {
return $err; // 失败
} else {
return $key; // 成功,$key 就是在七牛云的文件名,加上你在七牛云的外链地址就可以访问到文件
}
}
return view();
}
}
阅读剩余
版权声明:
作者:松跃笔记
链接:https://www.attm.cn/2024/11/06/thinkphp%e9%a1%b5%e9%9d%a2%e5%9b%be%e7%89%87%e8%a7%86%e9%a2%91%e6%96%87%e4%bb%b6%e5%af%b9%e6%8e%a5%e5%ad%98%e5%82%a8%e5%88%b0%e4%b8%83%e7%89%9b%e4%ba%91%e6%8c%87%e5%ae%9a%e7%9b%ae%e5%bd%95/
文章版权归作者所有,未经允许请勿转载。
THE END