一覧 |
コード登録画面
外部RSSを簡単に読み込んで出力するルーチン [ 2005年03月01日 ]
<?php
// 外部RSSを簡単に読み込んで出力するルーチン
$RSSURL = "http://www3.asahi.com/rss/index.rdf";
$buff = "";
$fp = fopen($RSSURL,"r");
while ( !feof($fp) ) {
$buff .= fgets($fp,4096);
}
fclose($fp);
$parser = xml_parser_create();
xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
xml_parse_into_struct($parser,$buff,$values,$idx);
xml_parser_free($parser);
$in_item = 0;
foreach ($values as $value) {
$tag = $value["tag"];
$type = $value["type"];
$value = $value["value"];
$tag = strtolower($tag);
if ($tag == "item" && $type == "open") {
$in_item = 1;
} else if ($tag == "item" && $type == "close") {
echo <<<EOM
$title<br>
$link<br>
$description<hr>
EOM;
$in_item = 0;
}
if ($in_item) {
switch ($tag) {
case "title":
// UTF-8なドキュメントの場合ここで
// $value = mb_convert_encoding($value, "EUC-JP", "UTF-8"); などする必要あり
$title = $value;
break;
case "link":
$link = $value;
break;
case "description":
// UTF-8なドキュメントの場合ここで
// $value = mb_convert_encoding($value, "EUC-JP", "UTF-8"); などする必要あり
$description = $value;
break;
}
}
}
?>
投稿者:no-name