zoukankan      html  css  js  c++  java
  • php利用七牛云的对象存储完成图片上传-高效管理图片

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

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

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

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

    在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

  • 相关阅读:
    VIO(4)—— 基于滑动窗口算法的 VIO 系统:可观性和 一致性
    矩阵零空间的含义和物理意义
    Spring Boot 2.5.1 发布!我真跟不上了。。。
    Redis 是并发安全的吗?你确定?
    Spring Boot 集成 Apollo 配置中心,真香、真强大!
    Spring Boot 接入支付宝,实战来了!
    微服务必须具备的 3 个基本功能!
    如何加速 Nginx 的服务响应?
    golang在日志中打印堆栈信息
    Maven
  • 原文地址:https://www.cnblogs.com/guoyugy/p/12364151.html
Copyright © 2011-2022 走看看