App::datetime 0.964 review

Download
by rbytes.net on

App::datetime is a date and time considerations. Most Enterprise development includes processing of dates and times

License: Perl Artistic License
File size: 121K
Developer: App::datetime Team
0 stars award from rbytes.net

App::datetime is a date and time considerations.

Most Enterprise development includes processing of dates and times. There are many date and time modules on CPAN, and choosing the right one can be confusing. There are no special perl data types for dates and times, so some direction is needed.

The short answer is that we recommend the following for most common date and time operations.

Class::Date
Class::Date::Rel

However, other modules are appropriate in certain circumstances. So for the longer answer, read on.

PERL 5 LANGUAGE SUPPORT

The native Perl 5 datetime type is an integer. It is not different from other integers in any way other than how it is used. It represents the number of non-leap seconds since January 1, 1970 UTC (the "Epoch" at GMT). The following internal Perl function gets the current time.

$current_time = time;
$current_time = time();

Other Perl functions that return this "datetime" integer are

($dev, $ino, $mode, $nlink, $uid, $gid, $redev, $size,
$atime, $mtime, $ctime, $blksize, $blocks) = stat($filename);
($dev, $ino, $mode, $nlink, $uid, $gid, $redev, $size,
$atime, $mtime, $ctime, $blksize, $blocks) = lstat($filename);

where $atime, $mtime, and $ctime are the same kind of integers, representing the access time, modification time, and change time of a file.

These $time values may be converted to human-readable form using the following internal perl functions. (See the "perlfunc" man page for more information.)

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($time);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($time);

Furthermore, the current time zone needs to be accessed through the environment variable, "TZ".

$timezone = $ENV{TZ};

This leaves the Perl developer with lots of work to do in order to process dates.

Formatting dates for output

Parsing dates on input

Comparing dates

Date math (addition, subtraction)

Other calendar-specific functions (i.e. holidays, days of week, etc)

Numerous modules have been posted to CPAN allowing the Perl developer to accomplish these tasks. However, they have pros and cons related to the following features.

Internationalization

Speed

Portability

Ranges of Dates Supported

Compliance with Perl Styleguide (function naming)

Requirements:
Perl

App::datetime 0.964 keywords