如何用一些简短的方法将所有文件和文件夹从一个文件夹移动到php中S3存储桶的另一个文件夹?
2022-08-30 18:12:30
我必须在php中移动S3存储桶的一个文件夹或另一个文件夹中的所有文件和文件夹。我知道做同样的事情的一种方法是 - 1)从源文件夹中获取所有对象列表2)将所有对象复制到目标文件夹3)从源文件夹中删除所有对象
有没有其他简短的方法可以做同样的事情。如果是这样,那么请与我分享,将不胜感激,提前感谢
我必须在php中移动S3存储桶的一个文件夹或另一个文件夹中的所有文件和文件夹。我知道做同样的事情的一种方法是 - 1)从源文件夹中获取所有对象列表2)将所有对象复制到目标文件夹3)从源文件夹中删除所有对象
有没有其他简短的方法可以做同样的事情。如果是这样,那么请与我分享,将不胜感激,提前感谢
有没有其他捷径可以做同样的事情
没有捷径可以做到这一点。
原因如下:
文件夹的概念是控制台所独有的。Amazon S3 使用存储桶和对象,但该服务本身不支持文件夹,也不提供任何用于处理文件夹的 API。
但是,为了帮助您组织数据,Amazon S3 控制台支持文件夹的概念。[...]
重要
在 Amazon S3 中,您可以创建存储桶并存储对象。该服务不支持您在典型文件系统中看到的任何层次结构。
控制台使用对象键名称来派生文件夹层次结构。它在键名中使用“/”字符来推断层次结构
http://docs.aws.amazon.com/AmazonS3/latest/UG/about-using-console.html
在S3中,将文件“移动”到另一个“文件夹”实际上无法完成。它只能通过制作每个对象的副本来模拟,为每个对象提供新的“层次结构”的新键名,然后删除原始文件。S3 甚至不支持重命名单个对象。重命名也可以通过使用新名称创建副本,然后删除原始名称来完成。控制台提供了支持这些操作的外观,但实际上它只模拟它们,如上所述。这是S3设计的一个刻意部分。