PHP 產生 RSS/ATOM pubDate/created 所需格式

RSS / ATOM 的格式要產生都很簡單, 麻煩的是日期格式的產生(RSS => pubDate, ATOM => created).

發現 PHP Date 有提供這些需要的相關全域變數可以使用:(PHP 5.1.1 以後開始支援這些全域變數)

  • echo DATE_RSS; // D, d M Y H:i:s O
  • echo DATE_ATOM; // Y-m-d\TH:i:sP
  • echo date(DATE_RSS); // Wed, 23 Apr 2008 19:27:19 +0800
  • echo date(DATE_ATOM); // 2008-04-23T19:27:38+08:00

如果是 MySQL timestamp/datetime format 直接拉出來的資料, 就可以直接使用:

  • date(DATE_RSS, strtotime($MYSQL_DATETIME_DATA));

目前支援的日期全域變數有以下:

  • DATE_ATOM: Atom  Atom (example: 2005-08-15T15:52:01+00:00)
  • DATE_COOKIE: HTTP Cookies (example: Monday, 15-Aug-05 15:52:01 UTC)
  • DATE_ISO8601: ISO-8601 (example: 2005-08-15T15:52:01+0000)
  • DATE_RFC822: RFC 822 (example: Mon, 15 Aug 05 15:52:01 +0000)
  • DATE_RFC850: RFC 850 (example: Monday, 15-Aug-05 15:52:01 UTC)
  • DATE_RFC1036: RFC 1036 (example: Mon, 15 Aug 05 15:52:01 +0000)
  • DATE_RFC1123: RFC 1123 (example: Mon, 15 Aug 2005 15:52:01 +0000)
  • DATE_RFC2822: RFC 2822 (Mon, 15 Aug 2005 15:52:01 +0000)
  • DATE_RFC3339: Same as DATE_ATOM
  • DATE_RSS: RSS (Mon, 15 Aug 2005 15:52:01 +0000)
  • DATE_W3C: World Wide Web Consortium (example: 2005-08-15T15:52:01+00:00)

其它相關網頁:

雖然格式很簡單, 但是有更多已經寫好的 Library 可以直接使用, 會省掉不少時間, 詳可參考:(不過下述我沒用過就是了.. Orz.)

RSS Parser 可以考慮用下述的

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料