What happened to Time::Piece:-). In general, it would be better to use a
DateTime::Format::Strptime class like this:
#!/usr/bin/perl -l
use strict;
use warnings;
use DateTime::Format::Strptime qw();
my $format = DateTime::Format::Strptime->new(
pattern => '%Y-%m-%d %H:%M:%S',
time_zone => 'local',
on_error => 'croak',
);
my $ts1 = '2012-02-15 00:00:00';
my $dt1 = $format->parse_datetime($ts1);
$dt1->add(
hours => 3,
minutes => 56,
seconds => 53,
);
print $format->format_datetime($dt1);
my $ts2 = '2012-02-15 00:00:00';;
my $dt2 = $format->parse_datetime($ts2);
$dt2->add(
years => 1,
hours => 4,
minutes => 27,
seconds => 25,
);
print $format->format_datetime($dt2);