Perl日期差异有不同的格式

时间:2014-06-19 15:13:45

标签: perl

我的perl代码中有两个日期 -

my $asof_date;
chomp($asof_date = `date +'%m/%d/%Y'`);

另一个来自sql表的日期为 - $date = $syb_row[3];

here $date is in the form of "Dec 20 2013 12:00AM"

现在我的帮助是计算到期日 - 到期日是两个日期之间的天数差异(即上述情况下的$ asof_date和$ date)除以365.

是的,我安装了有限的模块,因为没有安装解析器。

提前感谢。

1 个答案:

答案 0 :(得分:1)

use strict;
use warnings;

use DateTime;
use DateTime::Format::Strptime;

...;

my $db_parse = DateTime::Format::Strptime->new(
    pattern   => '%B %d %Y %R%p',
    locale    => 'en_US',
    time_zone => 'America/New York', ### Olson TZ name
);

my $asof_date = DateTime->now(time_zone => 'local');
my $db_date = $db_parse->parse_datetime($syb_row[3]);

my $maturity = $asof_date->delta_days($db_date)->days / 365;