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(); } }
技术QQ交流群:157711366
技术微信:liehuweb
写评论