メニュー
Amazon Simple Storage Service
開発者ガイド (API Version 2006-03-01)

AWS SDK for PHP の使用と PHP サンプルの実行

AWS SDK for PHP では、Amazon S3 のバケットとオブジェクトのオペレーションを行うための API を使用できます。サービスの低レベル API を使用するか、高レベルの抽象化を使用するかは、選択できます。

この SDK は、AWS SDK for PHP で入手できます。ここには、SDK のインストールおよび使用開始を行うためのドキュメントも掲載されています。

注記

AWS SDK for PHP を使用するための設定は、環境によって、また、どのようにアプリケーションを実行するかによって異なります。このドキュメントに載っている例をお使いの環境で実行するためのセットアップ方法については、AWS SDK for PHP Getting Started Guide を参照してください。

AWS SDK for PHP のレベル

低レベル API

低レベル API は、バケットやオブジェクトで実行される作成、更新、削除などの基礎的な Amazon S3 REST オペレーションに対応します。この API を使用すると、これらのオペレーションを詳細に制御することができます。例えば、リクエストをバッチ処理して並列に実行したり、マルチパートアップロード API を使用するときに(「Multipart Upload API を使用したオブジェクトのアップロード」を参照)、オブジェクトのパートを個別に管理できます。これらの低レベル API 呼び出しは、すべての Amazon S3 レスポンスの詳細を含む結果を返します。

高レベルの抽象化

高レベルの抽象化は、一般的ユースケースを簡素化するためのものです。例えば、低レベル API を使用して大きなオブジェクトをアップロードするには、まず Aws\S3\S3Client::createMultipartUpload() を呼び出し、次に Aws\S3\S3Client::uploadPart() メソッドを呼び出してオブジェクトのパートをアップロードし、最後に Aws\S3\S3Client::completeMultipartUpload() メソッドを呼び出してアップロードを完了します。代わりに、マルチパートアップロードの作成を簡素化する、高レベルの Aws\S3\Model\MultipartUpload\UploadBuilder オブジェクトを使用することもできます。

高レベルの抽象化を使用するもう 1 つの例を挙げると、バケットに保管されているオブジェクト(オブジェクトの数は問わない)を列挙する際、AWS SDK for PHP のイテレータ機能を使用してすべてのオブジェクトキーを返すことができます。これを低レベル API で行った場合、レスポンスによって返されるキーは最大 1,000 であるため、バケット内に 1,000 以上のオブジェクトがあると、結果が切り捨てられてしまいます。このため、レスポンスを管理して切り捨てを確認する必要があります。

PHP サンプルの実行

以下の手順では、このガイドに記載した PHP コード例の実行方法を説明します。

PHP コード例を実行するには

1

AWS SDK for PHP をダウンロードし、インストールします。次に、環境が最低要件(『AWS SDK for PHP Getting Started Guide』を参照)を満たしていることを確認します。

2

AWS SDK for PHP Getting Started Guide』の指示に沿って AWS SDK for PHP をインストールします。使用するインストール方法によっては、PHP 拡張モジュール間の依存性を解決するために、コードを変更しなければならない場合があります。

このドキュメント内の PHP コードサンプルはすべて、Composer dependency manager を使用します。詳しくは AWS SDK for PHP Getting Started Guide に説明があります。各コード例には、依存関係を取り込むための以下の行が含まれています。

Copy
require 'vendor/autoload.php';

3

AWS SDK for PHP のトピック「Using the AWS credentials file and credential profiles」で説明しているように、AWS 認証情報の認証情報プロファイルを作成します。実行時に、新しい Amazon S3 クライアントオブジェクトを作成した場合、クライアントは認証情報プロファイルから AWS 認証情報を取得します。

4

ドキュメントからプロジェクトにサンプルコードをコピーします。ご利用の環境によっては、設定ファイルおよび SDK ファイルを参照するコード例に対して、行の追加が必要な場合があります。

たとえば、PHP のサンプルをブラウザにロードするには、以下を PHP コードの先頭に追加し、ウェブアプリケーションディレクトリ(wwwhtdocs など)内に PHP ファイル(拡張子は .php)として保存します。

Copy
<?php header('Content-Type: text/plain; charset=utf-8'); // Include the AWS SDK using the Composer autoloader require 'vendor/autoload.php';

5

ご利用の設定に従い、サンプルをテストします。

関連リソース