virbo / yii2-kilatstorage
Library for S3 Kilatstorage
Installs: 18
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
- aws/aws-sdk-php: ~3.0
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2024-05-04 16:05:57 UTC
README
Library for S3 Kilatstorage
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require virbo/yii2-kilatstorage "~1.0"
or add
"virbo/yii2-kilatstorage": "~1.0"
to the require section of your composer.json
file.
Usage
Add this configuration to your config file
'components' => [ ... 's3' => [ 'class' => 'virbo\kilatstorage\S3Client', 'credentials' => [ 'key' => 'kilatstorage-key', 'secret' => 'kilatstorage-secret', ], 'region' => 'kilatstorage-region', //default: 'id-jkt-1 'version' => 'kilatstorage-version', //default: 'latest' ], ], ...
and then create new function, example:
#Create bucket
public function actionCreate() { $s3 = Yii::$app->s3; try { $result = $s3->createBucket('new_bucket_name'); return $result; } catch (S3Exception $e) { echo $e->getMessage(); } }
#List Bucket
public function actionListBucket() { $s3 = Yii::$app->s3; try { $result = $s3->listBuckets(); foreach ($result['Buckets'] as $bucket) { echo $bucket['Name'] . "\n"; } } catch (S3Exception $e) { echo $e->getMessage(); } }
#List Object/Content
public function actionList() { $s3 = Yii::$app->s3; try { $result = $s3->listObjects('bucket_name'); foreach ($result['Contents'] as $bucket) { echo $bucket['Key'] . "<br>"; } } catch (S3Exception $e) { echo $e->getMessage(); } }
#Delete empty bucket
public function actionDelete() { $s3 = Yii::$app->s3; try { $result = $s3->deleteBucket('bucket_name'); return $result; } catch (S3Exception $e) { echo $e->getMessage(); } }
#Upload object/content
public function actionUpload() { $s3 = Yii::$app->s3; $file = Yii::getAlias('@web/assets/images/image1.jpg'); $key = 'assets/images/'.basename($file); //will put object in folder assets/images return $s3->putObject('marketplace', $key, $file); }