我想知道是否可以在两个特定文件夹之间列出对象。
$objects = $client->getIterator('ListObjects', array(
"Bucket" => $bucket,
"Prefix" => "2016/09/23"
));
上面的代码,会列出该特定文件夹的对象。但我需要的是,如果有办法列出两个文件夹之间的对象。即2016/09/23至2017/1/14。我想要这两个文件夹之间的对象列表。有可能??
答案 0 :(得分:0)
我不知道亚马逊是否提供这个我怀疑它没有,所以一个解决方案是循环所有日期:
$start_date = '2016/09/23';
$end_date = '2017/1/14';
$all_objs = array();
$date = $start_date;
while (strtotime($date) <= strtotime($end_date)) {
$date = date ("Y/m/d", strtotime("+1 day", strtotime($date)));
$ret_objs = $client->getIterator('ListObjects', array(
"Bucket" => $bucket,
"Prefix" => $date,
));
foreach ($ret_objs as $obj) {
array_push($all_objs, $obj);
}
}
我没有要测试的S3实例,但您可以检查并调整它。
还要确保在构建日期之前设置时区date_default_timezone_set();
。