PHPで作るRSSビューア

(1/3)
RSSがブームである。標準機能として RSS をサポートする blog も増えてきた。「ぱふぅ家のホームページ」でも、3 つの RSS を配信している。

MagpieRSS

世の中には PHP用のRSS パーサというものが無償配布されている。これを使えば、簡単に RSS を表示するプログラムを作ることができる。
そこで今回は、MagpieRSSというオープン・ソースの RSS パーサを用いて RSS ビューアを作ってみることにする。
space
まず、http://magpierss.sourceforge.net/からパーサのソースをダウンロードする(現時点での最新版は 0.71.2)。解凍したすべてのファイル、フォルダを PHP が動作するフォルダに配置する。
space
メイン・プログラムを組む前に、1つだけソースに手を加える必要がある。
"rss_fetch.inc" の 358行目が "define('MAGPIE_OUTPUT_ENCODING', 'ISO-8859-1')" となっているが、この"ISO-8859-1"を "UTF-8" に置換しておく。これで、 パーサからの出力コードが UTF-8 になる。
Shift_JIS に置換することも可能だが、MagpieRSS が呼び出している PHP の xml関数群が現バージョンでは Shift_JIS には対応していないため、ここでは UTF-8 にするのが無難だろう。
これに伴い、メイン・プログラムも UTF-8 で記述する。

サンプル・プログラム

プログラムを実行する

プログラムをダウンロードする

サンプル・プログラムの流れ

画面イメージ
今回は、上図のように入力と結果を1つの画面で表示し、プログラムも1本で済ませることを目標にする。
画面は、大きく2つのブロックに分かれる。RSS の URL を入力するための INPUT部と、RSS を解釈した結果を表示する BODY部である。プログラムの流れとしては、URL が入力されたら BODY部を表示するようにする。
space
そこで、最初は INPUT部のみ表示しておき、[変換]ボタンが押されたら、URL の値を GET 渡しする。もし GET 渡しされた値があったら、BODY部を表示するようにする。
SVG-W3C ※上図を見るにはSVGビューワが必要です。
Corel SVG Viewer
この項つづく
header