simplexml_load_fileでRSSを取得・表示させる

simplexml_load_fileとは

simplexml_load_fileは、PHP5から利用可能になった関数で、XMLをパースしてオブジェクトに代入します。

今回は、オープンソースのECサイト構築システム「ZenCart」に外部ブログ(WordPress)のRSSを表示させてみました。

設置コード

<?php
		
$rss = "http://apr20.net/feed/";
$xml = simplexml_load_file($rss);

foreach($xml->channel->item as $itemValue){
	
//zencartなど、EUCにエンコードする必要がある場合は、出力前にエンコードする
$title = mb_convert_encoding($itemValue->title, 'EUC-JP', 'UTF-8');

                    echo '<li>'.date('m月d日', strtotime($itemValue->pubDate)).' <a href="'.$itemValue->link.'" target="_blank">'.$title.'</a></li>';
}
?>

上記コード内でコメントがついている行は、ZenCart用にEUCに変換しているだけなので、UTF-8の場合は、エンコードの必要はありません。

また、strtotime関数を使って、RSSのpubDateを「m月d日」の形に変換しています。変換前のpubDateは以下のような形式で出力されています。

[pubDate] => Sun, 05 Feb 2012 06:46:02 +0000 
投稿日:
カテゴリー: zencartphp

コメントする

メールアドレスが公開されることはありません。

CAPTCHA