阿里云oss整理

首先是购买oss服务 

获得参数

$config = [
            'OSS_ACCESS_ID' => '',
            'OSS_ACCESS_KEY' => '',
            'OSS_ENDPOINT' => '',
            'OSS_TEST_BUCKET' => ''
          ];

这里可以获得前两个参数,

接下来创建bucket

bucket名称自定义,填入第三个参数,endpoint也得到了,四个参数集齐,

顺便说一下bucket权限俺需要进行修改,其他默认

在写代码之前要引入oss

代码部分如下

      try {

          $config = [
            'OSS_ACCESS_ID' => '',
            'OSS_ACCESS_KEY' => '',
            'OSS_ENDPOINT' => '',
            'OSS_TEST_BUCKET' => ''
          ];
           //获取Oss的配置
          //实例化对象 将配置传入
          $ossClient = new OssClient($config['OSS_ACCESS_ID'], $config['OSS_ACCESS_KEY'], $config['OSS_ENDPOINT']);
          //这里是有sha1加密 生成文件名 之后连接上后缀
          $fileName = sha1(date('YmdHis', time()) . uniqid()) . '.' . explode('.',$cover)[1];
          //执行阿里云上传 
          $result = $ossClient->uploadFile($config['OSS_TEST_BUCKET'], 'face/'.$fileName, ROOT_PATH.$cover);
          
          //这个只是为了展示
          //可以删除或者保留下做后面的操作
          
          $arr = [
              'url' => $result['info']['url'],
              'filename' => $fileName
          ];
          unset($info);//先释放变量,否则删除会出错
          unlink(ROOT_PATH.$cover);
      } catch (OssException $e) {
          return $e->getMessage();
      }

说明一下

$result = $ossClient->uploadFile($config['OSS_TEST_BUCKET'], 'face/'.$fileName, ROOT_PATH.$cover);

这句代码中的第二个参数是 oss存放文件夹+文件名

                     第三个参数是文件源的路径

发布了38 篇原创文章 · 获赞 7 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_35510729/article/details/100980770