Wednesday, 24 October 2018

Get MySQL date in RFC-822 format for RSS feeds

To get the PubDate element of an RSS feed to validate, it needs to be in RFC-822 format. MySQL has flexible ways of working with dates and times which make this a simple task.

Given a datetime column called pubdate, this select statement (which can be combined with other selections) will yield a column of dates named rfcpubdate formated in RFC-822 format:
SELECT DATE_FORMAT(pubdate,'%a, %d %b %Y %T') AS rfcpubdate FROM tablename WHERE 1
The full RFC-822 date includes a timezone value which is not included in the MySQL output. If using PHP, this value can be appended to the output (assuming a variable $rfcpubdate exists containing a date string from the above select statment) using:
echo "$rfcpubdate ".date('T')."";
This will yield output that looks like:
Mon, 19 Jun 2006 07:41:18 PDT

0 comments:

Post a Comment