simplexml_load_file()を試してみたらとても便利だったので忘れないうちにメモしておきます。

simplexml_load_file()でできること

RSSを取得して表示することができます。正しくはマニュアルに「XMLファイルをパースし、オブジェクトに代入する 」とあります。

使い方

Yahoo!ニュースの「トピックストップ」のRSSを取得してみます。

とりあえず中身を確認

[php]
<?php
$xml = simplexml_load_file(‘http://rss.dailynews.yahoo.co.jp/fc/rss.xml’);
var_dump($xml);
?>
[/php]

実行結果

ニュース記事へのリンクをリスト形式で表示

[php]
<?php
$xml = simplexml_load_file(‘http://rss.dailynews.yahoo.co.jp/fc/rss.xml’);
?>
<ul>
<?php foreach($xml->channel->item as $data) : ?>
<li><a href="<?php echo $data->link; ?>"><?php echo $data->title; ?></a></li>
<?php endforeach; ?>
</ul>
[/php]

実行結果

[html]
<ul>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/local/genkai_nuclear_power_plant/">九電 玄海4号機の運転を再開</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/economy/japanpost/">年賀はがき発売 38億枚発行へ</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/domestic/food_poisoning/">未処理フグ 上野の店が販売</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/world/libya/">リビア東部 文化財8000点盗難</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/domestic/japanese_history/">平家の貴人か? 神戸で建物跡</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/sports/giants/">巨人に「野村ID」秦、橋上氏</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/economy/travel/">北朝鮮戦 日本人サポは150人</a></li>
<li><a href="http://rd.yahoo.co.jp/rss/l/topics/topics/*http://dailynews.yahoo.co.jp/fc/entertainment/marriage_and_divorce/">陣内智則 キム兄婚約を祝福</a></li>
</ul>
[/html]

実行結果こんな感じで簡単にRSSを表示できます。これは便利。アンテナサイトとかササッと作れそうですね。