给定两个日期:
$日期1
format: yyyy-mm-dd hh:mm:ss eg: 2013-05-21 07:47:21
$日期2
format: Day Month date hh:mm:ss yyyy eg: Thu Aug 1 09:53:40 2013
如何比较 $Date1 和 $Date2?
我想做以下操作:
if($Date2>=$Date1){ //做一些操作 }
但我无法进行比较,因为这两个日期的格式不同。
给定两个日期:
$日期1
format: yyyy-mm-dd hh:mm:ss eg: 2013-05-21 07:47:21
$日期2
format: Day Month date hh:mm:ss yyyy eg: Thu Aug 1 09:53:40 2013
如何比较 $Date1 和 $Date2?
我想做以下操作:
if($Date2>=$Date1){ //做一些操作 }
但我无法进行比较,因为这两个日期的格式不同。
怎么样:
use Time::Piece;
my $d1 = '2013-05-21 07:47:21';
my $d2 = 'Thu Aug 1 09:53:40 2013';
my $t1 = Time::Piece->strptime($d1, "%Y-%m-%d %T");
my $t2 = Time::Piece->strptime($d2, "%c");
say $t2->epoch - $t1->epoch;
输出:
6228379
使用正则表达式解析日期并使用Time::Local函数将其转换为 1970 年 1 月 1 日之后的秒数以比较整数。