ZendFrameworkでのAmazonAPI

2010年4月30日

ZendFrameworkを利用したAmazonAPIについて。

ネットに転がっている似たような記事は、軒並み古いと思った方がよい。
これはAmazonが2009年8月に仕様を変更したからで、
現在はアクセスキーの他にSecretのアクセスキーも必要になっている。

この仕様はタイムスタンプを付けたりなどいろいろやらなければならないが、
ZendFrameworkは単純。

require_once 'Zend/Service/Amazon.php’;

$amazoncode = “アクセスキー";
$secretcode = “secretのアクセスキー";
$amazon = new Zend_Service_Amazon($amazoncode,’JP’,$secretcode);

$title = “マトリックス";
$res = $amazon->itemSearch(
array(
'SearchIndex’ => 'DVD’,
'Keywords’ => $title
)
);

これでOK。

なおサーバ環境によっては
PHP Fatal error: Class 'DOMDocument’ not found
というエラーが出る場合がある。これはphp-xmlが無いということなので、
その場合は
yum install php-xml
をしてインストールすればよい。

さらにハマるポイントとして、
yum install php-xml
をしたらApacheを再起動しないとWEBには反映されない。