Membuat dan menggunakan bucket Amazon S3 dengan Versi 3 AWS SDK for PHP - AWS SDK for PHP

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Membuat dan menggunakan bucket Amazon S3 dengan Versi 3 AWS SDK for PHP

Contoh berikut menunjukkan cara:

  • Kembalikan daftar bucket yang dimiliki oleh pengirim permintaan yang diautentikasi menggunakan. ListBuckets

  • Buat ember baru menggunakan CreateBucket.

  • Tambahkan objek ke ember menggunakan PutObject.

Semua kode contoh untuk AWS SDK for PHP tersedia di sini GitHub.

Kredensial

Sebelum menjalankan kode contoh, konfigurasikan AWS kredensyal Anda, seperti yang dijelaskan dalam. Kredensial Kemudian imporAWS SDK for PHP, seperti yang dijelaskan dalamPenggunaan dasar.

Impor

require 'vendor/autoload.php'; use Aws\S3\S3Client;

Buat daftar bucket

Buat file PHP dengan kode berikut. Pertama buat layanan klien AWS.S3 yang menentukan Wilayah dan versi. AWS Kemudian panggil listBuckets metode, yang mengembalikan semua bucket Amazon S3 yang dimiliki oleh pengirim permintaan sebagai larik struktur Bucket.

Kode Sampel

$s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2006-03-01' ]); //Listing all S3 Bucket $buckets = $s3Client->listBuckets(); foreach ($buckets['Buckets'] as $bucket) { echo $bucket['Name'] . "\n"; }

Buat bucket

Buat file PHP dengan kode berikut. Pertama buat layanan klien AWS.S3 yang menentukan Wilayah dan versi. AWS Kemudian panggil createBucket metode dengan array sebagai parameter. Satu-satunya bidang wajib adalah kunci 'Bucket', dengan nilai string untuk nama bucket yang akan dibuat. Namun, Anda dapat menentukan AWS Wilayah dengan bidang CreateBucketConfiguration ''. Jika berhasil, metode ini mengembalikan 'Lokasi' bucket.

Kode Sampel

function createBucket($s3Client, $bucketName) { try { $result = $s3Client->createBucket([ 'Bucket' => $bucketName, ]); return 'The bucket\'s location is: ' . $result['Location'] . '. ' . 'The bucket\'s effective URI is: ' . $result['@metadata']['effectiveUri']; } catch (AwsException $e) { return 'Error: ' . $e->getAwsErrorMessage(); } } function createTheBucket() { $s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2006-03-01' ]); echo createBucket($s3Client, 'my-bucket'); } // Uncomment the following line to run this code in an AWS account. // createTheBucket();

Masukkan benda ke dalam ember

Untuk menambahkan file ke bucket baru Anda, buat file PHP dengan kode berikut.

Di baris perintah Anda, jalankan file ini dan teruskan nama bucket tempat Anda ingin mengunggah file Anda sebagai string, diikuti oleh jalur file lengkap ke file yang akan diunggah.

Kode Sampel

$USAGE = "\n" . "To run this example, supply the name of an S3 bucket and a file to\n" . "upload to it.\n" . "\n" . "Ex: php PutObject.php <bucketname> <filename>\n"; if (count($argv) <= 2) { echo $USAGE; exit(); } $bucket = $argv[1]; $file_Path = $argv[2]; $key = basename($argv[2]); try { //Create a S3Client $s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2006-03-01' ]); $result = $s3Client->putObject([ 'Bucket' => $bucket, 'Key' => $key, 'SourceFile' => $file_Path, ]); } catch (S3Exception $e) { echo $e->getMessage() . "\n"; }