php利用七牛云的对象存储完成图片上传-高效管理图片

时间:2023-12-05 15:58:02

在搭建个人博客时,大家都会买一台云服务器。可是图片的存放一直是一个问题,冷月帮大家找到一个免费的第三方平台对象存储-七牛云。大家可以把图片上传到七牛云的对象存储,大大节约服务器的压力。

首先,大家在使用七牛云的对象存储必须到官网上申请一个账号,并且实名认证。七牛云官网

进入个人中心,点击秘钥管理。记住你的AK和SK。

php利用七牛云的对象存储完成图片上传-高效管理图片

创建一个对象存储实例,记住自己的实例名字和测试域名。

php利用七牛云的对象存储完成图片上传-高效管理图片

在php项目里,利用composer工具安装七牛云的sdk。

composer require qiniu/php-sdk

安装完成后在服务端引入下面的代码即可使用:

<?php
/**
* Created by 冷月小白.
* 微信公众号: 学长冷月
*/
public static function image()
{
if (empty($_FILES['file']['tmp_name'])) {
exception('您提交的图片不合法', 404);
}
//选择要上传的文件
$file = $_FILES['file']['tmp_name']; //拿到上传文件的格式
$pathinfo = pathinfo($_FILES['file']['name']);
$ext = $pathinfo['extension'];
//拿到配置文件中的 ak sk 实例名字和测试域名
$config = config('qiniu');
//构建一个鉴权对象
$auth = new Auth($config['ak'], $config['sk']);
//生成上传token
$token = $auth->uploadToken($config['bucket']);
//上传后的文件名
$key = md5(time()) . '.' . $ext; //初始化图片上传类
$uploadMgr = new UploadManager();
$res = $uploadMgr->putFile($token, $key, $file); if ($res[1] !== NULL) {
return "图片上次失败";
} else {
return $key;
}
?>

如果这篇博文有帮助到您,可以帮冷月点一个赞或者加一个关注哦!

欢迎关注我的公众号:学长冷月,获得独家整理的学习资源和日常干货推送。

如果您对我的专题内容感兴趣,也可以关注我的博客:guoyu7.com