|
Packit |
9002b2 |
# we need to comment this out or PAUSE might index it
|
|
Packit |
9002b2 |
# pack age DateTime::Format::Tivoli;
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
use DateTime::Format::Builder (
|
|
Packit |
9002b2 |
parsers => {
|
|
Packit |
9002b2 |
parse_datetime => {
|
|
Packit |
9002b2 |
strptime => '%h %e %k:%M:%S %Y',
|
|
Packit |
9002b2 |
},
|
|
Packit |
9002b2 |
},
|
|
Packit |
9002b2 |
);
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
sub format_datetime {
|
|
Packit |
9002b2 |
my ( $self, $dt ) = @_;
|
|
Packit |
9002b2 |
my $z = $dt->clone->set_time_zone('GMT');
|
|
Packit |
9002b2 |
return $z->strftime('%h %e %k:%M:%S %Y');
|
|
Packit |
9002b2 |
}
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
package main;
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
my $parser = DateTime::Format::Tivoli->new();
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
my @dates = ( 'Nov 5 22:49:45 2003', '27/Apr/2003:19:45:11 -0400' );
|
|
Packit |
9002b2 |
|
|
Packit |
9002b2 |
for my $date (@dates) {
|
|
Packit |
9002b2 |
my $dt
|
|
Packit |
9002b2 |
= $parser->parse_datetime($date)->set_time_zone('Australia/Sydney');
|
|
Packit |
9002b2 |
print "$date => ", $dt->datetime, " => ", $parser->format_datetime($dt),
|
|
Packit |
9002b2 |
"\n";
|
|
Packit |
9002b2 |
}
|