DateTime is probably the slowest date/time handling modules on CPAN, but it also provides incredibly correct date/time handling. It can convert between timezones flawlessly; it handles those crazy leap-seconds we have from time to time; with the right plugins it can parse from and serialize into pretty much any format you need.

Apart from its speed, there are plenty of other things to dislike about it too: the objects are mutable which can allow for spooky action at a distance unless you remember to call clone all over the place, and it feels weird that from_epoch dies when called with a single parameter. But if you need correct date/time handling with support for timezones, it's the only game in town, so get with it! (That said, there is a DateTime subclass on CPAN called DateTime::Moonpig which cleans up some of DateTime's API warts.)

If all your times are in a single time zone, and you don't need to be pedantically accurate with your calculations (taking into account leap seconds, daylight savings, etc) then a lighter weight module like Time::Moment might be suitable.


In reply to Re: Which Module for Dates? by tobyink
in thread Which Module for Dates? by jrefior

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.