SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

PEARライブラリ活用

PHPでAmazon Web Servicesを利用する

PEARライブラリ活用 (7)

Services_Amazonを使わない場合

 本稿はServices_Amazonの利用方法を紹介するのが主題なのですが、まずは、Services_AmazonなしでAWSを利用してみましょう。これによって、Services_Amazonの内部動作への直感が働くようになります(そのような直感は、問題が発生したときにとても役に立ちます)。

各種IDの設定

 登録IDとアソシエイトIDを設定します(設定しないとプログラムが終了するようにしておきます)。

$AWSAccessKeyId='';//ここで登録IDを設定する
$associateTag='';//ここでアソシエイトIDを設定する

if($AWSAccessKeyId=='') die('AWSAccessKeyId is not set.');
if($associateTag=='') die('AssociateTag is not set.');

REST

 RESTは次のような手順で実行します。

  1. 必要な操作をURLの形で記述する
  2. 作成したURLで、サーバにアクセスする
  3. 結果のXMLを解析する

 作成したURLを表示して確認するための補助的な関数を用意しておきましょう。

function echoUrl($request){
    $tmp=htmlentities($request);//HTML中で利用できない文字を変換
    echo "<p><a href='$tmp'>$tmp</a></p>";
}

 AWSを利用するためのサーバは地域によって異なります。Developer Guideによれば、日本(JP)の場合は、「http://ecs.amazonaws.jp/onca/xml」あるいは「https://aws.amazonaws.jp/onca/xml」ですが、ここでは前者を使うことにします。安全な通信が必要なときは後者を利用してください。

$url='http://ecs.amazonaws.jp/onca/xml';

 他の操作でも共通な以下のパラメータを設定しておきます。

パラメータ名
Service AWSECommerceService
AWSAccessKeyId $AWSAccessKeyId
Version 2008-06-23

 パラメータは?のあとにパラメータ名=値の形で記述します(パラメータが複数ある時は&で区切ります)。

$url.="?Service=AWSECommerceService&AWSAccessKeyId=$AWSAccessKeyId&Version=2008-06-23";

 Versionは本稿執筆時点で最新のものです。Versionの指定は必須ではありませんが、指定することで、サービスの仕様を固定できます(結果が同じになるわけではありません)。省略すると、2005-10-05を指定したことになります(参考)。

次のページ
商品を指定して取得する

この記事は参考になりましたか?

PEARライブラリ活用連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 矢吹 太朗(ヤブキ タロウ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/2902 2008/09/09 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー