使用php sdk从S3下载整个文件夹

时间:2017-10-05 07:11:12

标签: amazon-s3

我正在尝试学习PHP SDK S3。

我可以使用PHP将整个文件夹从本地传输到S3存储桶。

是否可以使用PHP将整个文件夹从S3存储桶复制到本地,如果是,那么请指导我。

我无法这样做。

2 个答案:

答案 0 :(得分:0)

符合this回答:

  

使用AWS SDK for PHP还可以更轻松地完成此操作   使用downloadBucket()方法。这是一个例子(假设是$ client)   是S3客户端的一个实例):

     

$ bucket =' YOUR_BUCKET_NAME&#39 ;; $ directory =   ' YOUR_FOLDER_OR_KEY_PREFIX_IN_S3&#39 ;; $ basePath =' YOUR_LOCAL_PATH /';

     

$ client-> downloadBucket($ basePath。$ directory,$ bucket,$ directory);   这种方法很酷的是它只排队文件   在当地不存在(或未经修改)   目录,并尝试并行下载它们,以便提高速度   整个下载时间。该方法有第四个参数   (参见链接)包括其他选项,如设置多少   您希望一次发生的并行下载。

答案 1 :(得分:0)

function aws_download_folder ($bucket,$directory,$localpath)
{
    global $s3Client;    
    $s3Client->downloadBucket($localpath . $directory, $bucket, $directory);
}

//Call Your Function..
aws_download_folder('backup-tanna-accounts','FolderName/','LocalPath');

==> downloadBucket()是AWS提供的功能。
==> $ s3Client是您的s3对象