The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Time::Elapsed - Displays the elapsed time as a human readable string.

SYNOPSIS

   use Time::Elapsed qw( elapsed );
   $t = 1868401;
   print elapsed( $t );

prints:

   21 days, 15 hours and 1 second

If you set the language to turkish:

   print elapsed( $t, 'TR' );

prints:

   21 gün, 15 saat ve 1 saniye

DESCRIPTION

This module transforms the elapsed seconds into a human readable string. It can be used for (for example) rendering uptime values into a human readable form. The resulting string will be an approximation. See the "CAVEATS" section for more information.

FUNCTIONS

elapsed SECONDS [, LANG, TEMPLATE]

  • SECONDS must be a number representing the elapsed seconds. If it is false, 0 (zero) will be used. If it is not defined, undef will be returned.

  • The optional argument LANG represents the language to use when converting the data to a string. The language section is really a standalone module in the Time::Elapsed::Lang:: namespace, so it is possible to extend the language support on your own. Currently supported languages are:

       Parameter  Description
       ---------  -----------------
          EN      English (default)
          TR      Turkish

    Language ids are case-insensitive. These are all same: en, EN, eN.

  • The optional argument TEMPLATE can alter the generated string' s format. This option is currently not documented.

CAVEATS

  • The calculation of the elapsed time is only an approximation, since these values are used internally:

       1 Day   =  24 Hour
       1 Month =  30 Day
       1 Year  = 365 Day

    See "How Datetime Math is Done" in DateTime for more information on this subject. Also see in_units() method in DateTime::Duration.

  • This module' s source file is UTF-8 encoded (without a BOM) and it returns UTF-8 values whenever possible.

  • Currently, the module won't work with any perl older than 5.6 because of the UTF-8 encoding and the usage of utf8 pragma. However, the pragma limitation can be by-passed with a %INC trick under 5.005_04 (tested) and can be used with english language (default behavior), but any other language will probably need unicode support.

SEE ALSO

PTools::Time::Elapsed, DateTime, DateTime::Format::Duration

AUTHOR

Burak Gürsoy, <burak@cpan.org>

COPYRIGHT

Copyright 2007 Burak Gürsoy. All rights reserved.

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.