idapgroup / s3-storage-sdk
S3存储的PHP封装
1.0.0
2023-02-27 13:42 UTC
Requires
- php: >=7.4
- aws/aws-sdk-php: ^3.147
Requires (Dev)
- phpunit/phpunit: ^9.6.3
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');