Php 如何计算feedburner项目链接的年龄?
我正在做一个项目来确定feedburner提要中列出的url/帖子的年龄。我可以解析并以如下格式获取pubDate值:Php 如何计算feedburner项目链接的年龄?,php,datetime,rss,feedburner,Php,Datetime,Rss,Feedburner,我正在做一个项目来确定feedburner提要中列出的url/帖子的年龄。我可以解析并以如下格式获取pubDate值:Sat,2013年7月13日10:00:15+0000 我想创建一个PHP脚本,从当前日期时间中减去原始日期时间。我已经创建了strotime($item->pubDate),但是我被时区弄糊涂了。脚本必须与每个提要一起工作(可能在不同的时区),并且脚本必须在每个时区正常工作 那么,如何根据这些规范确定帖子的发布时间呢?您可以使用该类,特别是静态方法,类似于:- $dateStr
Sat,2013年7月13日10:00:15+0000
我想创建一个PHP脚本,从当前日期时间中减去原始日期时间。我已经创建了strotime($item->pubDate),但是我被时区弄糊涂了。脚本必须与每个提要一起工作(可能在不同的时区),并且脚本必须在每个时区正常工作
那么,如何根据这些规范确定帖子的发布时间呢?您可以使用该类,特别是静态方法,类似于:-
$dateStr = 'Sat, 13 Jul 2013 10:00:15 +0000';
$dateTime = \DateTime::createFromFormat('D, d M Y H:i:s O', $dateStr);
$dateTime->setTimezone(new \DateTimeZone('UTC'));
var_dump($dateTime);
$diff = $dateTime->diff(new \DateTime('now', new \DateTimeZone('UTC')));
var_dump($diff);
输出:-
object(DateTime)[1]
public 'date' => string '2013-07-13 10:00:15' (length=19)
public 'timezone_type' => int 3
public 'timezone' => string 'UTC' (length=3)
object(DateInterval)[3]
public 'y' => int 0
public 'm' => int 0
public 'd' => int 0
public 'h' => int 22
public 'i' => int 47
public 's' => int 48
public 'invert' => int 0
public 'days' => int 0
正如您所看到的,每个dateTime对象都将其时区设置为UTC$diff
是一个实例,它表示“现在”与您收到的日期之间的差异
您可以使用以任何格式输出日期之间的差异。查看此项