朝顔日記
memo.php 用の RSS を生成する何か
URL をメモる何か は、タブ区切りのテキストでログを保存しているわけですが、このログから RSS 生成する PHP スクリプト、memo_rss.php も作ったのでこれも公開しておきます。
次のお楽しみ(何)のためには、なにはともあれ RSS を出しておかないことには話にならないので。(謎)
ところで、設定部分が、memo.php とダブるので別ファイルにしてインクルードしておいたほうがよかったかな。まぁ次はそうしよう。
<?php
header("Content-Type: application/xml; charset=utf-8");
// 設定
$log = "./memo.log"; // 保存するログ
$TZD = "+09:00"; // タイムゾーン
$memo_title = "URI メモのサンプル"; // html のタイトル
$rss_discription = "簡単な説明つきで URI をメモする何かのサンプルの RSS";
// RSS の説明
$lines = file($log);
?>
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/"
xmlns:rss="http://purl.org/rss/1.0/"
xml:lang="ja">
<channel rdf:about="<?php print($rss); ?>">
<title><?php print($memo_title); ?></title>
<link><?php print($script); ?></link>
<description><?php print($rss_discription); ?></description>
<dc:date><?php print date("Y-m-d\TH:i:s", filemtime($log)).$TZD;?></dc:date>
<items>
<rdf:Seq>
<?php
foreach($lines as $line) {
$line = rtrim($line);
$items = explode("\t", $line);
print("<rdf:li rdf:resource=\"".$items['1']."\"/>");
}
?>
</rdf:Seq>
</items>
</channel>
<?php
foreach($lines as $line) {
$line = rtrim($line);
$items = explode("\t", $line);
$categories = explode(" ", $items['4']);
print("<item rdf:about=\"".$items['1']."\">\n");
print("<title>".$items['0']."</title>\n");
print("<link>".$items['1']."</link>\n");
print("<dc:date>".$items['3']."</dc:date>\n");
foreach($categories as $category){
print("<dc:subject>".$category."</dc:subject>\n");
}
print("<description>".$items['2']."</description>\n</item>\n");
}
?>
</rdf:RDF>
メモのほうの仕様変更に伴い tag を dc:sbuject を列記する形で出力するように追加
「memo.php 用の RSS を生成する何か」へコメントをつける
この記事へのツッコミ
- 1: toshi (2006-05-21T01:33:54+09:00)
- 「memo.php 用の RSS を生成する何か」を少し改良させていただき,公開しました。
トラックバック
- 1: toss idea cube/「memo.php 用の RSS を生成する何か」をいじる (2006-05-21T01:26:19+09:00)
- memo.php 用の RSS を生成する何かを少し改良してみたので,公開します。改良点・xml宣言を関数で出力(環境によっては出力できない現象に対応)・dc:titleの追加(多くのRSSリーダーで
この記事のリンク元
- http://q.hatena.ne.jp/1171368563
- http://design.jpn.org/
- http://www.azoo.biz/nc/
- http://b.hatena.ne.jp/entry/1152000
- http://del.icio.us/tagchan
- http://www.tagchan.net/blog/2006/06/rss.html
- http://ask.jp/web.asp?o=0&qsrc=3&ln=ja&q=RSS+%E7%94%9F%E6%88%90%E3%80%80PHP&btnWeb.x=0&btnWeb.y=0
- http://tagchan.net/blog/2006/06/rss.html
- http://b.hatena.ne.jp/shinada/favorite
- http://mixi.jp/view_diary.pl?id=151044754&owner_id=307156
- http://www.ie.u-ryukyu.ac.jp/~j03054/wiki/index.php?cmd=read&page=Memo%2FRSS
- http://www.ie.u-ryukyu.ac.jp:16080/~j03054/wiki/index.php?cmd=read&page=Memo%2FRSS&word=RSS
- http://ask.jp/web.asp?qsrc=138&q=rss+dc%3Adate+php
- http://ask.jp/web.asp?o=8125&qsrc=4&q=php+print+%3C%3Fxml+version%3D%221.0%22+&ln=ja&ps=
- http://www.ie.u-ryukyu.ac.jp/~j03054/wiki/index.php?Memo%2FRSS
- この記事の永続的 URI ならびに トラックバック ping URI
- http://diary.noasobi.net/2005/01/diary_050130b.html


