Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何通过PHP api调用获取AWS S3存储桶位置?_Amazon Web Services_Amazon S3_Aws Php Sdk - Fatal编程技术网

Amazon web services 如何通过PHP api调用获取AWS S3存储桶位置?

Amazon web services 如何通过PHP api调用获取AWS S3存储桶位置?,amazon-web-services,amazon-s3,aws-php-sdk,Amazon Web Services,Amazon S3,Aws Php Sdk,我正在互联网上搜索如何通过API调用获取AWS s3 bucket区域,或者直接在PHP中使用他们的库,但没有找到相关信息 我有以下可用信息: 帐户凭据、存储桶名称、访问密钥+机密。这是针对多个bucket的,我可以访问这些bucket,并且我需要以编程方式获取区域,因此登录aws控制台并签出不是一个选项 假设您在$Client中有一个AWS PHP客户端实例,您应该能够使用$Client->getBucketLocation()找到该位置 下面是一些示例代码: <?php $resul

我正在互联网上搜索如何通过API调用获取AWS s3 bucket区域,或者直接在PHP中使用他们的库,但没有找到相关信息

我有以下可用信息:
帐户凭据、存储桶名称、访问密钥+机密。这是针对多个bucket的,我可以访问这些bucket,并且我需要以编程方式获取区域,因此登录aws控制台并签出不是一个选项

假设您在
$Client
中有一个AWS PHP客户端实例,您应该能够使用
$Client->getBucketLocation()
找到该位置

下面是一些示例代码:

<?php

$result = $client->getBucketLocation([
    'Bucket' => 'yourBucket',
]);

创建S3客户机时,可以使用AWS中的任何可用区域,即使它不是您使用的区域

$s3Client = new Aws\S3\S3MultiRegionClient([
            'version'     => 'latest',
            'region'      => 'us-east-1',
            'credentials' => [
                'key'    => $accessKey,
                'secret' => $secretKey,
            ],
        ]);

$region = $s3Client->determineBucketRegion($bucketname);

如何实例化AWS客户端?它需要看起来的区域:/您应该能够选择任何区域,因为对
getBucketLocation()
的调用是不确定存储桶的。您可以在上找到可用区域的列表。
$s3Client = new Aws\S3\S3MultiRegionClient([
            'version'     => 'latest',
            'region'      => 'us-east-1',
            'credentials' => [
                'key'    => $accessKey,
                'secret' => $secretKey,
            ],
        ]);

$region = $s3Client->determineBucketRegion($bucketname);