如何通过PHP SDK在Amazon S3存储桶下创建文件夹?

100*_*rie 12 php amazon amazon-s3

我正在开发一个iPhone应用程序,允许用户上传照片和分享.我想使用S3来存储上传的图像以及处理过的图像(例如,缩略图,缩小图像).我已经在我的EC2实例上安装了AWS PHP SDK,我的问题是:1)从iPhone应用程序上传的照片应该首先转到EC2目录,然后复制到S3存储桶,还是应该直接上传到S3?2)如何通过PHP SDK在S3存储桶下创建不同的文件夹以及如何从文件夹中读取文件?

提前致谢!

Man*_*pat 27

是的,可以使用s3sdk 创建新文件夹.

尝试下面的代码

<?php

 /* abc is the folder name */

 $s3->putObject(array( 
                   'Bucket' => $bucket,
                   'Key'    => "abc/",
                   'Body'   => "",
                   'ACL'    => 'public-read'
                  ));
Run Code Online (Sandbox Code Playgroud)


alf*_*day 9

  1. 答案可以在这里找到: 直接上传到s3而不使用生产服务器

  2. 我从未使用过PHP SDK,但是我浏览了AWS SDK for PHP 1.5.14文档 并遇到了以下需要使用的API:

    a)create_object:您将使用它将对象放入存储桶.您将指定文件名.您询问了如何创建不同的文件夹:您将包含文件名的完整路径.例如,不是命名文件"photo1.jpg",而是将其命名为"user1/vacation/photo1.jpg".

    b)get_object_list:给定一些标准,此API将返回给定的对象列表.如果要读取特定文件夹中的所有对象,请将前缀指定为文件夹的路径.例如,如果我想查找文件夹"user1/vacation /"中的所有文件,我会将我的前缀指定为"user1/vacation /".