1、使用composer命令安装千牛云插件
composer require qiniu/php-sdk
2、去七牛云注册账号,实名认证
1. 注册完账号后登录,实名认证完毕后可以在,点击个人头像,在个人中心可以取到AK,sk方便我们后面使用;
2. 创建对象储存空间
3、代码
function icloud()
{
//接收文件上传的值
$file = $_FILES;
//本地的文件路径
$localFilePath = $file['front_photo']['tmp_name'];
//截取文件后缀名
//$suffix = '.jpg';
$suffix = strtolower(substr($file['file']['name'],strpos($file['file']['name'],'.')));
//生成一个唯一的文件名称,重命名 (md5加密原文件名+秒+随机数)
$fileName = md5($file['file']['name']) . date('s',time()) . rand(1,9999999);
$fileName .= $suffix;
//上传七牛云业务逻辑
$accessKey = ''; //去控制台的秘钥管理拿AK
$secretKey = '';//去控制台的秘钥管理拿SK
$auth = new Auth($accessKey, $secretKey);
//七牛云桶名,根据自己实际进行填写
$bucket = '';//这里填写自己创建的对象存储空间名称
// 生成上传Token
$token = $auth->uploadToken($bucket);
// 构建 UploadManager 对象
$uploadMgr = new UploadManager();
// 调用 UploadManager 的 putFile 方法进行文件的上传。
list($ret, $err) = $uploadMgr->putFile($token, $fileName, $localFilePath);
//错误信息提示
if ($err != null) {
//可调整为错误页面
$this->error('上传文件失败');
}
$imageUrl = 'http://qtpud69oi.hn-bkt.clouddn.com/' . $fileName;
//入库业务逻辑 create save 只有这两个模型方法才能自动写入时间戳
$result =BannerModel::create([
'image_url'=>$imageUrl,
]);
$this->success('上传文件成功');
//把七牛云图片路径存储到我们自己的数据库 七牛云图片路径
$imageUrl = 'http://qtpud69oi.hn-bkt.clouddn.com/' . $fileName;//域名拼接图片名称就是图片云端的路径
}
4、图片上传云端成功
点击详情可以查询到图片,以及图片的云端路径