PHP で date() 関数で RSS の pubDate を出力する

検索してみたら無かったので記事に起こしておきました。

1
<?php echo date('D, d M Y H:i:s O'); ?>

DATE_RFC822 という定数を date 関数の第一引数に入れれば良いと、Facebook で教えて頂きました。

1
<?php echo date(DATE_RFC822); ?>

以下の記事が参考になりました。

This date format is used in RSS feeds, in XML elements such as pubDate or lastBuildDate. The date format must be RFC 822 compliant but a 4 digit year is preferred. Unlike the format used by HTTP headers, GMT is not required, and the time zone may be expressed using the either time zone abbreviation (‘T’) or the offset from GMT (‘O’).

PHP date()

この date フォーマットは RSS フィードの pubDate や lastBuildDate などの XML エレメントなどに使われています。この date フォーマットは RFC 822 に準拠する必要がありますが、4桁の年が好ましいです。HTTP ヘッダによって使われているフォーマットとは異なり、GMT は必須ではなく、タイムゾーンの省略形 (‘T’) もしくは GMT (’0′) からのオフセットのどちらかを使用してタイムゾーンを表現できます。

コメント

  1. hatch2さんのコメント

    date(DATE_RFC2822)を使うと4桁の年が表示されるみたいです!