这里是我用来获取存储桶s3中所有文件的代码:
use Aws\S3\S3Client;
use Aws\S3\Exception\S3Exception;
$client = S3Client::factory(array(
'key' => 'key',
'secret' => 'secret',
'region' => 'eu-east-1'
));
$client->registerStreamWrapper();
$objects = $client->getListObjectsIterator(array(
'Bucket' => "bucket_name",
'Prefix' => 'folder_name/'
));
如何只获取名称包含字符串的文件?
感谢。
答案 0 :(得分:2)
通过S3 API无法做到这一点,因为如果该字符串是您要列出的键的前缀,则S3 API允许您按字符串过滤。
因此,您必须列出所有键,将结果输出到变量,然后以编程方式过滤该列表。
当然,您可以在首先检索列表时使用前缀过滤器来获取更短的列表。