Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 使用PHPSDK从S3下载整个文件夹_Amazon S3 - Fatal编程技术网

Amazon s3 使用PHPSDK从S3下载整个文件夹

Amazon s3 使用PHPSDK从S3下载整个文件夹,amazon-s3,Amazon S3,我正在努力学习PHP SDK S3 我能够使用PHP将整个文件夹从本地传输到S3 bucket 是否可以使用PHP将整个文件夹从S3 bucket复制到本地,如果可以,请指导我 我不能这样做。根据答案: 使用AWS SDK for PHP还有一种更简单的方法 使用downloadBucket()方法。下面是一个示例(假设$client 是S3客户端的一个实例): $bucket='YOUR_bucket_NAME'$目录= '您的文件夹\或\中的\键\前缀\ u'$基本路径='您的本地路径/'

我正在努力学习PHP SDK S3

我能够使用PHP将整个文件夹从本地传输到S3 bucket

是否可以使用PHP将整个文件夹从S3 bucket复制到本地,如果可以,请指导我

我不能这样做。

根据答案:

使用AWS SDK for PHP还有一种更简单的方法 使用downloadBucket()方法。下面是一个示例(假设$client 是S3客户端的一个实例):

$bucket='YOUR_bucket_NAME'$目录= '您的文件夹\或\中的\键\前缀\ u'$基本路径='您的本地路径/'

$client->downloadBucket($basePath.$directory,$bucket,$directory); 这种方法最酷的地方在于它只对文件进行排队 本地数据库中尚不存在(或尚未修改)的 目录,并尝试并行下载它们,以提高速度 增加总下载时间。该方法有第四个参数 (请参见链接),其中包括其他选项,如设置数量 您希望一次进行并行下载

==>downloadBucket()是AWS提供的功能。

==>$s3Client是您的s3对象

您找到方法了吗?
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');