use strict; use warnings; # to avoid purgatory
use HTTP::Date qw(str2time);
my $timestamp_local="20110905 142631";
my $seconds_since_epoch=str2time($timestamp_local, 'UTC');
print "$seconds_since_epoch\n".gmtime($seconds_since_epoch)."\n";
####
1315232791
Mon Sep 5 14:26:31 2011
####
my $seconds_since_epoch=str2time($timestamp_local, '+0200');
####
use strict; use warnings; # to avoid purgatory
use HTTP::Date qw(str2time);
use Time::Local qw(timelocal timegm);
my $difference_to_utc_in_minutes=(timegm(localtime)-timelocal(localtime))/60;
my $diff_hours=abs($difference_to_utp_in_minutes)/60;
my $diff_mins=abs($difference_to_utp_in_minutes)%60;
my $difference_to_utc=
($difference_to_utc_in_minutes >= 0 ? '+' : '-').
sprintf("%02d",$diff_hours).
sprintf("%02d",$diff_mins)
;
my $timestamp_local="20110905 142631";
my $seconds_since_epoch=str2time($timestamp_local, $difference_to_utc);
print "$seconds_since_epoch\n".gmtime($seconds_since_epoch)."\n";
####
1315225591
Mon Sep 5 12:26:31 2011