tamasmazuk/amazon-s3-php-class

适用于PHP 7.3+的独立Amazon S3 (REST)客户端,使用CURL,无需Pear。

v1.0.4 2023-08-29 18:41 UTC

This package is auto-updated.

Last update: 2024-09-29 21:35:22 UTC


README

composer require tamasmazuk/amazon-s3-php-class

额外信息

  • SignatureDoesNotMatch错误bug修复已合并:tpyo#175

用法

面向对象方法(例如:$s3->getObject(...))

$s3 = new S3($awsAccessKey, $awsSecretKey);

静态方式(例如:S3::getObject(...))

S3::setAuth($awsAccessKey, $awsSecretKey);

对象操作

上传对象

从文件中放置一个对象

S3::putObject(S3::inputFile($file, false), $bucketName, $uploadName, S3::ACL_PUBLIC_READ)

从字符串中放置一个对象并设置其Content-Type

S3::putObject($string, $bucketName, $uploadName, S3::ACL_PUBLIC_READ, array(), array('Content-Type' => 'text/plain'))

从资源(需要缓冲区/文件大小)中放置一个对象

S3::putObject(S3::inputResource(fopen($file, 'rb'), filesize($file)), $bucketName, $uploadName, S3::ACL_PUBLIC_READ)

检索对象

获取一个对象

S3::getObject($bucketName, $uploadName)

将对象保存到文件中

S3::getObject($bucketName, $uploadName, $saveName)

将对象保存到任何类型的资源中

S3::getObject($bucketName, $uploadName, fopen('savefile.txt', 'wb'))

复制和删除对象

复制一个对象

S3::copyObject($srcBucket, $srcName, $bucketName, $saveName, $metaHeaders = array(), $requestHeaders = array())

删除一个对象

S3::deleteObject($bucketName, $uploadName)

存储桶操作

获取存储桶列表

S3::listBuckets()  // Simple bucket list
S3::listBuckets(true)  // Detailed bucket list

创建存储桶

S3::putBucket($bucketName)

获取存储桶内容

S3::getBucket($bucketName)

删除空存储桶

S3::deleteBucket($bucketName)