php - 如何从 amazon s3 对象中获取键数组

标签 php object amazon-web-services amazon-s3

我正在使用 amazon s3 v3 php sdk,我正在尝试获取我正在使用的所有对象的 key

s3->listObjects([ 'Bucket' => $somebucketName]);

此函数工作正常,我正在获取 $somebucketName 存储桶下的所有对象及其以下形式

Aws\Result Object
(
    [data:Aws\Result:private] => Array
        (
            [IsTruncated] => 
            [Marker] => 
            [Contents] => Array
                (
                    [0] => Array
                        (
                            [Key] => 1.PNG
                            [LastModified] => Aws\Api\DateTimeResult Object
                                (
                                    [date] => 2015-07-14 07:22:25.000000
                                    [timezone_type] => 2
                                    [timezone] => Z
                                )

                            [ETag] => "23f423234v23v42424d23"
                            [Size] => 19980
                            [StorageClass] => STANDARD
                            [Owner] => Array
                                (
                                    [DisplayName] => sfsfssfsdf
                                    [ID] => 242f2342242342252g42f42vt34
                                )

                        )

                    [1] => Array
                        (
                            [Key] => 58.jpg
                            [LastModified] => Aws\Api\DateTimeResult Object
                                (
                                    [date] => 2015-07-14 07:20:26.000000
                                    [timezone_type] => 2
                                    [timezone] => Z
                                )

                            [ETag] => "vrtet4v4t54tvt4gvtgv45"
                            [Size] => 1226694
                            [StorageClass] => STANDARD
                            [Owner] => Array
                                (
                                    [DisplayName] => sfsfssfsdf
                                    [ID] => 34t3t3t3y43y4yg5yy4vg6u676
                                )

                        )

                    [2] => Array
                        (
                            [Key] => HDFHDFHDFHDFHFHFH
                            [LastModified] => Aws\Api\DateTimeResult Object
                                (
                                    [date] => 2015-07-30 12:07:42.000000
                                    [timezone_type] => 2
                                    [timezone] => Z
                                )

                            [ETag] => "3453345343rcf3f3r3r3f"

                )

            [Name] => SFSSD
            [Prefix] => 
            [MaxKeys] => 1000
            [@metadata] => Array
                (
                    [statusCode] => 200
                    [effectiveUri] => https://s3-us-west-2.amazonaws.com/SFSSD
                    [headers] => Array
                        (
                            [x-amz-id-2] =>  sdfsfs234sfs
                            [x-amz-request-id] => HSJFSD899
                            [date] => Mon, 03 Aug 2015 06:46:48 GMT
                            [x-amz-bucket-region] => us-west-2
                            [content-type] => application/xml
                            [transfer-encoding] => chunked
                            [server] => AmazonS3
                        )

                )

        )

)

现在我的问题是如何从上面的对象中获取如下所示的键数组

array("1.png","58.jpg","HDDHDFHDHDGH);

最佳答案

Aws\Result 实现了 ArrayAccess。您可以像这样访问内容:

$result = $s3->listObjects(['Bucket' => $somebucketName])
$contents = $result['Contents'];

关于php - 如何从 amazon s3 对象中获取键数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31781102/

相关文章:

amazon-web-services - AWS Cognito : sign in with usernam/password OR facebook

php - 使用 PHP 中的 webhook 将文件上传到 Discord

php - 复制已安装驱动器上的文件

javascript - iPad 用户代理检测

php - 带有消息 'Protocol "https 的 Google 服务身份验证 Google_IO_Exception 在 libcurl 中不受支持或禁用

javascript - AngularJS:按属性名称过滤对象数组

java - 如何从相互连接的一排对象的末尾删除一个对象? ( java )

C# 方法有 1 个参数,但使用 2 个参数调用

linux - Elasticsearch 7.6 监听环回地址但不监听服务器 IP

java - AWS API Gateway WebSocket 超时?