CodeVault (ユーザ投稿コードライブラリ) ポータルトップ | phpspot

  一覧 | コード登録画面
前のページに戻る
外部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