AWS S3 SDK for PHP,上传到存储桶内的文件夹

时间:2012-05-31 13:51:16

标签: php amazon-s3 amazon-web-services

我刚刚开始使用适用于PHP的AWS S3 SDK,我已经设法使用PHP将我的PC上的项目文件夹上传到s3存储桶,有没有办法在该存储桶中指定一个文件夹,例如,它不会将image.jpg上传到ima​​gebucket,而是上传到'imagebucket'内的名为images的文件夹。

2 个答案:

答案 0 :(得分:5)

aws s3中没有文件夹的概念。它仅用于amazon AWS UI使用的显示目的。

实际上它将文件名存储为密钥&数据作为价值。

如果存储5个包含不同文件夹的文件,则不会创建5个文件夹。

答案 1 :(得分:4)

来自文档:

public function uploadDirectory($directory, $bucket, $keyPrefix = null, array $options = array())

通过指定$ keyPrefix,您可以将上载的对象放在Amazon S3存储桶中的虚拟文件夹下。例如,如果$ bucket名称是my-bucket而$ keyPrefix是' testing /',那么您的文件将上传到测试/虚拟文件夹下的my-bucket:https://my-bucket.s3.amazonaws.com/testing/filename.txt

请参阅:http://docs.aws.amazon.com/aws-sdk-php/guide/latest/service-s3.html#uploading-a-directory-to-a-bucket