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"; }