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