idapgroup/s3-storage-sdk

1.0.0 2023-02-27 13:42 UTC

This package is auto-updated.

Last update: 2024-09-10 16:13:19 UTC


README

用于与AWS S3存储一起工作的S3存储SDK。

文档

AWS S3存储Api的文档可以在这里找到。

安装

通过composer安装此扩展是首选方式。

运行以下命令之一:

composer require idapgroup/s3-storage-sdk

或者将以下内容添加到你的composer.json文件的require部分:

{
  "require": {
      "idapgroup/s3-storage-sdk": "^1.0.0"
  }
}

快速入门

创建S3存储

<?php

require 'vendor/autoload.php';

use IdapGroup\S3StorageSdk\Storage\S3Storage;

$s3Client = new S3Client([
            'region' => 'S3_REGION',
            'version' => 'S3_API_VERSION',
            'credentials' => [
                'key' => 'S3_KEY',
                'secret' => 'S3_SECRET'
            ],
        ]);

$readStorage = new S3Storage($s3Client, 'S3_READ_BUCKET', 'S3_REGION');
$writeStorage = new S3Storage($s3Client, 'S3_WRITE_BUCKET', 'S3_REGION');

示例

保存文件

// Create an instance of class that implements UploadedFileInterface
$file = new UploadedFile();
$readStorage->save($file, 'filename');

将文件传输到文件存储

// Create an instance of class that implements S3FileInterface or extends S3File
$imageFile = new S3File('file_path', $writeStorage->getBucket());
$readStorage->transfer($imageFile);

从文件存储中删除文件

$readStorage->delete('file_path');

检查文件在文件存储中的存在性

$readStorage->has('file_path');

获取文件

$readStorage->get('file_path');

获取存储桶名称

$bucketName = $readStorage->getBucket();

获取存储桶区域

$bucketRegion = $readStorage->getRegion();

构建手动上传文件的URL

$bucketName = $writeStorage->buildPutUrl('filename');