我正在开发一款iPhone应用,允许用户上传照片并分享。我想使用S3来存储上传的图像以及处理过的图像(例如,缩略图,缩小图像)。我在我的EC2实例上安装了AWS PHP SDK,我的问题是: 1)从iPhone应用程序上传的照片首先要转到EC2目录,然后复制到S3存储桶,还是应该直接上传到S3? 2)如何通过PHP SDK在S3存储桶下创建不同的文件夹以及如何从文件夹中读取文件?
提前致谢!
答案 0 :(得分:23)
是,可以使用s3
sdk创建新文件夹。
尝试下面的代码
<?php
/* abc is the folder name */
$s3->putObject(array(
'Bucket' => $bucket,
'Key' => "abc/",
'Body' => "",
'ACL' => 'public-read'
));
答案 1 :(得分:9)
答案可以在这里找到: Direct upload to s3 without the use of a production server
我从未使用过PHP SDK,但我正在浏览AWS SDK for PHP 1.5.14 documentation 并且遇到了您需要使用的以下API:
a)create_object:您将使用此功能将对象放入存储桶中。您将指定文件名。您询问了如何创建不同的文件夹:您将包含文件名的完整路径。例如,不是命名文件“photo1.jpg”,而是将其命名为“user1 / vacation / photo1.jpg”。
b)get_object_list:此API将根据某些条件返回给您一个对象列表。如果要读取特定文件夹中的所有对象,请将前缀指定为文件夹的路径。例如,如果我想查找文件夹“user1 / vacation /”中的所有文件,我会将我的前缀指定为“user1 / vacation /".