AWS:无法在S3中检索密钥

时间:2017-01-19 20:42:13

标签: php amazon-web-services amazon-s3 aws-sdk

我需要抓住其中一个桶的内容。我尝试使用AWS PHP SDK执行此操作,但不返回任何内容。这是我的代码:

use Aws\S3\S3Client;
$s3client = S3Client::factory(array('credentials' => array(
                    'key'    => '???????',
                    'secret' => '???????' ), 'region'  => '?????', 'version' => 'latest', ));

try {
    $data = $s3client->getIterator('ListObjects', array("Bucket" => "?????"));
    print_r($data);
} catch (S3Exception $e) {
    echo $e->getMessage() . "\n";
}

这是输出:

Generator Object ( )

我从该代码得到的输出显示没有错。但是,应该有一些内容。我使用的凭据与用于将对象上传到存储桶的凭据相同,所以我不认为这些是坏的。我错过了什么吗?如何检索我的桶密钥?

1 个答案:

答案 0 :(得分:1)

你得到的是迭代器而不是对象。 要获取对象,需要使用迭代器。类似的东西:

foreach ($data as $object) {
    echo $object['Key'] . "\n";
}