in reply to Re: working with epoch seconds
in thread working with epoch seconds

very interesting that you get 28800 (8 hours). I should have had 7200, but I get 3600.
So, the output from strftime is in the localtime zone ?
Any suggestions how to define the output timezone ?
Thanks a lot
LuCa

UPDATE: This seems todo more or less what I need:
use DateTime ; my $now = DateTime->now->set_time_zone("UTC") ; print $now->strftime("%s", time()) ;

Replies are listed 'Best First'.
Re^3: working with epoch seconds
by Hue-Bond (Priest) on Oct 09, 2006 at 11:47 UTC

    Use a module:

    use strict; use warnings; use DateTime; my $dt = DateTime->now; print $dt->strftime ("%Y %m %d, %H:%M:%S %Z\n"); $dt->set_time_zone ('America/New_York'); print $dt->strftime ("%Y %m %d, %H:%M:%S %Z\n"); __END__ 2006 10 09, 11:45:55 UTC 2006 10 09, 07:45:55 EDT

    Update: Ah, you figured it out. That's great :^).

    --
    David Serrano

      it seems to work :), but what is the difference between POSIX 'strftime' and DateTime::strftime ?

      LuCa

        DateTime::strftime works on DateTime objects, while POSIX::strftime works on the parameters you supply each time you call it. Apart from that, there should be no difference between them:

        use DateTime; use POSIX qw/strftime/; print DateTime-> now-> set_time_zone ('Europe/Madrid')-> strftime ("%Y %m %d, %H:%M:%S %Z\n"); print strftime "%Y %m %d, %H:%M:%S %Z\n", localtime; __END__ 2006 10 09, 14:57:36 CEST 2006 10 09, 14:57:36 CEST

        --
        David Serrano