Dvi*_*evy 30 php sdk amazon-s3
我正在尝试获取Object
我的存储桶中特定文件夹下的列表.
我知道要获取我所有对象的列表:
$objects = $client->getIterator('ListObjects', array(
'Bucket' => $bucket
));
Run Code Online (Sandbox Code Playgroud)
我想只获取文件夹下的对象my/folder/test
.我试过添加
'key' => "my/folder/test",
Run Code Online (Sandbox Code Playgroud)
和
'prefix' => "my/folder/test",
Run Code Online (Sandbox Code Playgroud)
但它只是返回我桶中的所有对象.
dcr*_*cro 60
您需要使用Prefix
将搜索限制为特定目录(公共前缀).
$objects = $client->getIterator('ListObjects', array(
"Bucket" => $bucket,
"Prefix" => "your-folder/"
));
Run Code Online (Sandbox Code Playgroud)
Wil*_*ley 27
答案是上面但我想我会提供一个完整的工作示例,可以直接复制和粘贴到PHP文件并运行
use Aws\S3\S3Client;
require_once('PATH_TO_API/aws-autoloader.php');
$s3 = S3Client::factory(array(
'key' => 'YOUR_KEY',
'secret' => 'YOUR_SECRET',
'region' => 'us-west-2'
));
$bucket = 'YOUR_BUCKET_NAME';
$objects = $s3->getIterator('ListObjects', array(
"Bucket" => $bucket,
"Prefix" => 'some_folder/' //must have the trailing forward slash "/"
));
foreach ($objects as $object) {
echo $object['Key'] . "<br>";
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
34488 次 |
最近记录: |