给出两个日期:
$ Date1
format: yyyy-mm-dd hh:mm:ss eg: 2013-05-21 07:47:21
$ Date2
format: Day Month date hh:mm:ss yyyy eg: Thu Aug 1 09:53:40 2013
如何比较$ Date1和$ Date2?
我想做以下操作:
如果($日期2> = $日期1){ //做一些操作 }
但我无法进行比较,因为两个日期的格式不同。
答案 0 :(得分:4)
怎么样:
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
答案 1 :(得分:0)
使用正则表达式解析日期,并使用Time::Local函数转换为1970年1月1日之后的秒数,以比较整数。