Amazon S3 FOR PHP 使用总结

Amazon Simple Storage Service(Amazon S3),是一个公开的服务,Web 应用程序开发人员可以使用它存储数字资产,包括图片、视频、音乐和文档。 S3 提供一个 RESTful API 以编程方式实现与该服务的交互。

Amazon S3 FOR PHP 使用总结_第1张图片


1.创建s3客户端(你要有s3的key和secret):

require_once("../inc/aws/aws-autoloader.php");
use Aws\S3\S3Client;

// Creating a client
$client = S3Client::factory ( array (
		'key' => 'YOUR_KEY',
		'secret' => 'YOUR_SECRET' 
) );

2.向S3上传文件(这里的bucket是我自己已经创建的):

/*$$$$$$$$$$$$$$$$$$$$  Upload file to Amazon S3 @@@@@@@@@@@@@@@@@@@@@*/

$result = $client->putObject(array(
 		'Bucket' => $bucket,
 		'Key' => 'data_from_file.txt',
 		'SourceFile' => './img/nosql.png',
 		'Metadata' => array(
 				'Foo' => 'abc',
 				'Bar' => '123'
 		)
 ));

//We can poll ther objext until it is accessible
$client->waitUntilObjectExists(array(
		'Bucket' => $bucket,
		'Key' => 'data_from_file.txt'
));

3.列出buckets:

/*$$$$$$$$$$$$$$$$$$$$  List your buckets @@@@@@@@@@@@@@@@@@@@@*/


$result = $client->listBuckets();
foreach($result['Buckets'] as $bucket) {
var_dump($bucket);
}


3.列出objects:

/*$$$$$$$$$$$$$$$$$$$$  Listing objects in your buckets @@@@@@@@@@@@@@@@@@@@@*/

$iterator = $client->getIterator('ListObjects', array(
 'Bucket' => $bucket
));

foreach($iterator as $object) {
var_dump($object);
}


参考:

1.http://docs.aws.amazon.com/aws-sdk-php/guide/latest/service-s3.html (读者可以看这篇amazon官网的文档)

2.http://www.9lessons.info/2012/08/upload-files-to-amazon-s3-php.html

你可能感兴趣的:(Amazon S3 FOR PHP 使用总结)