SHOEISHA iD

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

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

PEARライブラリ活用

PHPでAmazon Web Servicesを利用する

PEARライブラリ活用 (7)

  • X ポスト
  • このエントリーをはてなブックマークに追加

本稿では、Amazon Web ServicesをPHPで操作する方法を説明します。AWSを利用する方法には大きく分けてRESTとSOAPがあります。本稿ではまず、簡単なため多くの開発者に利用されているRESTを紹介し(SOAPは本稿では扱いません)、より抽象度の高い方法であるPEAR Services_Amazonを使った利用方法を紹介します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 一般に、「ショッピングサイトを利用する」と言えば、人間がウェブブラウザでアクセスして利用することを意味します。しかし、本稿で扱うアクセスの主体はPHPのプログラムです。これは、「PHPに人間がアクセスしているふりをさせる」ということではありません。そうしなければならないようなウェブサイトもありますが、Amazonは、プログラムのためのインターフェイス(API)をAmazon Web Services(AWS)として公開しているため、簡単にプログラムでアクセスすることができます。

 AmazonがAPIを公開していることには、さまざまな意義があります。まず、多くの開発者が、Amazonのための独自のオンライン店舗を作れるようになります。独自の店舗の売り上げの一部をその開発者が得られる仕組み(アソシエイト)が、開発者へのインセンティブになっています。店舗の数が増えればAmazon全体の売り上げも上がることが期待されますから、APIやアソシエイトの仕組みを用意することは、Amazonの利益にもなっています(当然ですが)。また、Amazonの膨大な商品データベースを利用できるという意義もあります。実際、今日無料で利用できる書誌データベースとして、Amazonのものより使いやすいものを筆者は知りません。

 本稿では、AWSをPHPで操作する方法を説明します。

 AWSを利用する方法には大きく分けてRESTとSOAPがあります。RESTは必要な操作をURLの形で記述してサーバに送信し、結果をXMLで受け取る方式です。SOAPは双方向ともXMLを利用します。本稿ではまず、簡単なため多くの開発者に利用されているRESTを紹介します(SOAPは本稿では扱いません)。次に、より抽象度の高い方法であるPEAR Services_Amazonを紹介します。Services_Amazonは内部でRESTを使いますが、そのことを(ほとんど)意識しなくてよいように作られています。AWSへの問い合わせ結果を一定時間キャッシュする仕組みも用意されています。

必要な環境

 XAMPP for Windows 1.6.4に含まれるPHP 5.2.4にServices_Amazon 0.7.1をインストールして動作を確認しました。利用したAWSのバージョンは2008-06-23です。

準備

パッケージのインストール

 コマンドプロンプトから次のようにして、Services_Amazonをインストールします。関連パッケージもインストールするために-alldepsが必要です。

 また、コマンドの実行前に、「c:\xampp\php\pear.ini」の「"\xampp」を「"C:\xampp」に修正します(ディレクトリはインストール先に応じて適宜読み替えてください)。

> c:
> cd \xampp\php
> pear install --alldeps services_amazon-beta

各種IDの取得

 AWSを利用するためには、「登録ID」と呼ばれるものを取得しなければなりません。本稿の内容を実際に試したい場合は、AWSのサイトで登録IDを取得してから先に進んでください(AWSについてまったく知らない場合は、このページに掲載されているFAQに目を通しておくといいでしょう)。

 紹介料を受け取るサービスのためのアソシエイトIDも取得しておくといいでしょう(本稿では、ショッピングカートを利用する際に必要になります)。アソシエイトIDはアソシエイト・プログラムのサイトで取得できます。

会員登録無料すると、続きをお読みいただけます

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

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

メールバックナンバー

次のページ
Services_Amazonを使わない場合

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
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本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

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

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

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

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

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

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2902 2008/09/09 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング