ข้ามไปยังเนื้อหาหลัก
ProgrammerThailand

Yii Framework 2 (Yii2)

อ่าน File และ Folder ใน Bucket ของ Amazon S3 ด้วย Yii2

อ่าน File และ Folder ใน Bucket ของ Amazon S3 ด้วย Yii2

ในบทเรียนรู้นี้เรามาเขียนโปรแกรมเพื่ออ่าน File และ Folder ใน Bucket ของ Amazon S3 กัน โดยเราจะใช้ Package ที่มีชื่อว่า 

"aws/aws-sdk-php": "^3.63"

โดยเปิดไฟล์ composer.json จากนั้นเพิ่ม package ในส่วน require แล้วสั่ง cmd/terminal 

composer update

จากนั้นเข้าไป Generate Key ก่อน โดยเข้าเมนู ชื่อที่ Login ขวาบน จากนั้นเลือก My Security Credentials

อ่าน File และ Folder ใน Bucket ของ Amazon S3 ด้วย Yii2

จากนั้นเลือก I AM User แล้ว สร้าง user ใหม่ เลือก bucket ที่ต้องการ แล้ว กด Tab Security credentials เพื่อสร้าง Access Key

อ่าน File และ Folder ใน Bucket ของ Amazon S3 ด้วย Yii2

ส่วน Secret Key ให้สร้างที่ Root User ดูเพิ่มเติมได้ที่ https://aws.amazon.com/blogs/security/wheres-my-secret-access-key/

 

เขียนโปรแกรมเพื่อเชื่อมต่อ

//...
use Aws\S3\S3Client;
//...

public function actionS3()
    {
        $s3 = S3Client::factory([
            'credentials' => [
                'key'    => 'ADLSDFJSDJHGM3HVU5WRQ',
                'secret' => '5FvD4jKlskdfji/sdfsasdkfhi/cA5/Gnldl',
            ],
            'region' => 'ap-northeast-1',
            'version' => 'latest'
        ]);

        //$buckets = $s3->listBuckets();
        $bucket = 'programmerthailand';
        $result = $s3->listObjects(array('Bucket' => $bucket));

        return $this->render('s3', ['result' => $result]);

    }

ในส่วน view ทดลอง dump ข้อมูลดู

<?php
$this->title = 'S3';

var_dump($result['Contents']);

เมื่อแสดงผลจะได้ข้อมูลลักษณะดังนี้

อ่าน File และ Folder ใน Bucket ของ Amazon S3 ด้วย Yii2

ติดปัญหาตอนทำตาม? ถามในชุมชน

ความคิดเห็น (0)

ยังไม่มีความคิดเห็น — เริ่มคุยเป็นคนแรก ถามสิ่งที่สงสัย หรือแชร์ประสบการณ์ของคุณ