PHPの勉強がてら、はてなの注目キーワードをamazonのアソシエイト付きリンクに置き換えるスクリプトを作ってみました。
はてなの注目キーワードはRSSを出しているので、MagpieRSSを使おうかと思いましたが、今回は勉強のため、XML Libraryのxml.php+Cache_LiteのLite.phpを使ってみました。
PEARはよくわからないので、xml.phpとLite.phpを同じディレクトリに放り込んで呼び出しています。
自分でもひーこら言いながら作ったので、よく解説はできませんが(笑)、だいたいの流れはこんな感じです。
1・はてな注目キーワードのRSSを指定して・・・
$url ="http://d.hatena.ne.jp/hotkeyword?mode=rss";
2・Lite.phpでキャッシュする。
require_once("Lite.php");
$options = array(
"cacheDir" => "./cache/",
"lifeTime" => 3600,
);
$Cache_Lite = new Cache_Lite($options);
$Cache_Lite->clean(false,'old');
if ($cache = $Cache_Lite->get($url)) {
$content = $cache;
}else{
$content = file_get_contents($url);
$Cache_Lite->save($content,$url);
}
3・これをxml.phpを読み込んで配列に入れる。
include('xml.php');
$data = XML_unserialize($content);
これだけで RSS、すなわちXMLが$dataに入ってしまいます。便利!
とりあえず配列に入ってしまえばこっちのもの。
あとはこんな感じでデータを取り出して加工すればおっけー!
$maintitle = $data['rdf:RDF']['channel']['title'];//RSSのタイトル
繰り返し部分はforeachで取り出しました。
実行結果は→http://lab.after1.net/hatena/
いいのか悪いのかわからないけど、とりあえず期待通りにできました!ははは。
amazonのID取得はこちら→amazonアソシエイトセントラル