use Modern::Perl; use DateTime; use DateTime::Format::Flexible; my $first_dt = DateTime::Format::Flexible->parse_datetime( 'Fri, 26 Aug 2011 14:34:55 GMT'); my $second_dt = DateTime::Format::Flexible->parse_datetime( 'Sat, 27 Aug 2011 07:03:02 +1000'); my $first_dt_utc = $first_dt->set_time_zone('UTC'); my $second_dt_utc = $second_dt->set_time_zone('UTC'); say $first_dt_utc->delta_days( $second_dt_utc )->delta_days, ' days of difference'; #### use Modern::Perl; use DateTime; use DateTime::Format::Flexible; say DateTime::Format::Flexible->parse_datetime( 'Fri, 26 Aug 2011 14:34:55 GMT')->set_time_zone('UTC')->delta_days(DateTime::Format::Flexible->parse_datetime( 'Sat, 27 Aug 2011 07:03:02 +1000')->set_time_zone('UTC'))->delta_days, ' days of difference';