AWS SDK Yii2 - - Amazon Yii2
AWS SDK 3 Yii2
composer.
php composer.phar --prefer-dist fedemotta/yii2-aws-sdk "*"
"fedemotta/yii2-aws-sdk": "*"
require composer.json.
. AWS 2, fedemotta/yii2-aws-sdk "1. *"
, :
<?php
return [
'components' => [
'awssdk' => [
'class' => 'fedemotta\awssdk\AwsSdk',
'credentials' => [
'key' => 'your-aws-key',
'secret' => 'your-aws-secret',
],
'region' => 'your-aws-region',
'version' => 'your-aws-version',
],
],
];
?>
AWS:
<?php
$aws = Yii::$app->awssdk->getAwsSdk();
$elb = $aws->createElasticloadbalancing();
$load_balancers = $elb->describeLoadBalancers()->toArray();
if (isset($load_balancers['LoadBalancerDescriptions'])){
foreach ($load_balancers['LoadBalancerDescriptions'] as $balancer){
if (isset($balancer['LoadBalancerName'])){
echo $balancer['LoadBalancerName'];
}
}
}
?>
S3:
<?php
Yii::$app->awssdk->region = 'sa-east-1';
$aws = Yii::$app->awssdk->getAwsSdk();
$s3 = $aws->createS3();
$result = $s3->listObjects(['Bucket' => 'your-bucket-id',
"Prefix" => "your-path"])->toArray();
$object = end($result['Contents']);
$key = $object['Key'];
$file = $s3->getObject([
'Bucket' => 'your-bucket-id',
'Key' => $key
]);
header('Content-Type: ' . $file['ContentType']);
echo $file['Body'];
?>