start page | rating of books | rating of authors | reviews | copyrights

Programming Perl

Programming PerlSearch this book
Previous: 3.2.69 glob Chapter 3
Functions
Next: 3.2.71 goto
 

3.2.70 gmtime

gmtime 

EXPR

This function converts a time as returned by the time function to a 9-element list with the time correct for the Greenwich time zone (aka GMT, or UTC, or even Zulu in certain cultures, not including the Zulu culture, oddly enough). Typically used as follows:

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

All list elements are numeric, and come straight out of a struct tm (that's a C programming structure - don't sweat it). In particular this means that $mon has the range 0..11 , $wday has the range 0..6 , and the year has had 1,900 subtracted from it. (You can remember which ones are 0-based because those are the ones you're always using as subscripts into 0-based arrays containing month and day names.) If EXPR is omitted, it does gmtime(time) . For example, to print the current month in London:

$london_month = (qw(Jan Feb Mar Apr May Jun         Jul Aug Sep Oct Nov Dec))[(gmtime)[4]];

The Perl library module Time::Local contains a subroutine, timegm() , that can convert in the opposite direction.

In scalar context, gmtime returns a ctime (3)-like string based on the GMT time value.


Previous: 3.2.69 glob Programming Perl Next: 3.2.71 goto
3.2.69 glob Book Index 3.2.71 goto