2010-02-23

[PHP] RSSの日付(pubDate)を一般のフォーマットに変換

PHPでRSSファイルを読み込んで、最新情報を表示するような処理を行うとき、
RSSの持っている日付書式を、普通のYYYY-MM-DDに変換するやり方です。

RSS2.0の日付(pubDate)
<pubDate>Tue, 23 Feb 2010 20:32:18 +0900</pubDate>

※2010/09/09加筆
strtotimeを使用する場合は、タイムゾーンを設定する必要があるようです。
またPHPのバージョンによってバグもあるようなのでご注意ください。

<?php
$rssDate = "Tue, 23 Feb 2010 20:32:18 +0900";
$myDate = strtotime($rssDate);
echo date('Y-m-d H:i:s', $myDate);
?>


<?php
$rssDate = "Tue, 23 Feb 2010 20:32:18 +0900";
date_default_timezone_set('Asia/Tokyo');
$myDate = strtotime($rssDate);
echo date('Y-m-d H:i:s', $myDate);
?>

Comment:

Trackback URL: