RSSやAtomフィードをパースするクラスライブラリ:SimplePie
2006年03月30日-
SimplePie is a very fast and easy-to-use class, written in PHP, for reading RSS and Atom syndication feeds.
RSSやAtomフィードをパースするクラスライブラリのSimplePieの紹介。
クラスライブラリの形になっているので使いやすいのが特徴です。
あと面白いのが、クラス内にadd_to_deliciousやadd_to_diggといったメソッドがある点で、パースしたRSSのURLをdeliciousやdiggに追加用のURLとして変換できる点です。
SimplePieを使ったサンプルプログラムは次のような感じ。
<?php
require_once('simplepie.inc');
$feed = new SimplePie(); // インスタンス生成
$feed->cache_location("cache"); // キャッシュディレクトリ指定
$feed->feed_url("//phpspot.org/blog/index.rdf"); // パースするRSS設定
$feed->init(); // RSSパース実行
for ($i = 0; $i < $feed->get_item_quantity(); $i++) {
$permalink = $feed->get_item_permalink($i);
$title = $feed->get_item_title($i);
if ($permalink != "") {
echo $feed->get_item_date($i, 'Y/m/d');
echo " - ";
echo "<a href="$permalink">$title</a><br>";
echo $feed->get_item_description($i)."<br>";
echo "<a href="".$feed->add_to_delicious($i)."">del.icio.usに追加</a>"; // del.icio.us追加用のURL出力
echo " - ";
echo "<a href="".$feed->add_to_digg($i)."">diggに追加</a>"; // diggに追加用のURL出力
echo "<hr>";
}
}
?>
出力例
ライブラリ用ファイルはたった1つのファイル(simplepie.inc)を読み込むだけです。
なかなか使えます。