RSS feed使用PHP将日期时间(GMT)发布为Unix时间戳格式

时间:2010-05-11 08:34:17

标签: php database rss

如何使用PHP将RSS feed发布日期时间(GMT)转​​换为Unix时间戳?

我需要在TIMESTAMP数据类型列中将日期存储到我的表中。

2 个答案:

答案 0 :(得分:4)

是否可以选择使用PHP函数生成Unix时间戳(即自Unix Epoch以来的秒数),然后让MySQL从那里处理它?<​​/ p>

PHP: - PHP Documentation

$timestamp = strtotime( 'Sat, 07 Sep 2002 09:42:31 GMT' ); // = 1031391751

MySQL: - MySQL Documentation

... `timestamp` = FROM_UNIXTIME( 1031391751 ) ...

答案 1 :(得分:2)

来自MySQL Manual

  

TIMESTAMP列显示在   格式与DATETIME列相同。在   换句话说,显示宽度是   固定为19个字符,格式   是'YYYY-MM-DD HH:MM:SS'。

RSS 2.0 specification表示:

  

RSS中的所有日期时间都符合   RFC的日期和时间规范   822,除了当年   可以用两个字符表示   或四个字符(四个首选)。


因此,如果我们有以下RSS日期:

$timeRSS = 'Sat, 07 Sep 2002 09:42:31 GMT'; // RFC 822

我们需要执行以下操作将其转换为MySQL TIMESTAMP格式:

date_default_timezone_set('GMT'); // make sure we are using the same timezone
date('Y-m-d H:i:s', strtotime($timeRSS)); // 2002-09-07 09:42:31