tabenguyen / cakephp-amazon-s3
Cakephp Amazon S3 - robmcvey/cakephp-amazon-s3 的 Composer 版本
dev-master
2014-11-06 05:31 UTC
Requires
- php: >=5.2.17
- composer/installers: *
This package is auto-updated.
Last update: 2024-09-11 11:09:59 UTC
README
一个用于与 Amazon Web Services S3 对象交互的 CakePHP 插件。此插件提供简单且健壮的方法,可以添加到任何 CakePHP 项目中,以完成以下功能:
- 从 S3 桶中检索远程文件并本地保存
- 在 S3 桶中保存本地文件
- 在 S3 桶中删除文件
要求
- CakePHP 2.x
- 一个 Amazon Web Services 账户 (http://aws.amazon.com/s3/)
- 您的 AWS 访问密钥和秘密密钥
安装
[Composer]
required: "tabenguyen/cakephp-amazon-s3": "dev-master"
用法示例
请记住将 CakePlugin::load('CakephpAmazonS3');
添加到您的应用程序引导文件中。
然后,只需使用您的 AWS 访问密钥、秘密密钥和您希望工作的桶名称初始化插件。
App::uses('AmazonS3', 'CakephpAmazonS3.Lib'); $AmazonS3 = new AmazonS3(array('{access key}', '{secret key}', '{bucket name}'));
GET
get
方法检索远程文件并将其本地保存。假设在 S3 上有一个名为 foo.jpg
的文件,并且您希望将其保存到本地 /home/me/stuff/photos
,您将使用以下命令:
$AmazonS3->get('foo.jpg' , '/home/me/stuff/photos');
PUT
put
方法是 get
的逆操作,将本地文件保存到 S3。
$AmazonS3->put('/home/me/stuff/photos/foo.jpg');
您可以选择在桶内指定一个远程目录来保存文件。
$AmazonS3->put('/home/me/stuff/photos/foo.jpg' , 'some/folder');
要将任何额外的 AWS 标头添加到 put
,例如将文件设置为 "public",它们可以作为数组传递给 amazonHeaders
属性。
$AmazonS3->amazonHeaders = array( 'x-amz-acl' => 'public-read', 'X-Amz-Meta-ReviewedBy' => 'john.doe@yahoo.biz' ); $AmazonS3->put('/home/me/stuff/photos/foo.jpg' , 'some/folder');
DELETE
从 S3 删除文件。
$AmazonS3->delete('foo.jpg');
或从桶内的目录中删除
$AmazonS3->delete('/some/folder/foo.jpg');