home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


gmtime

gmtime 
expr

Converts a time string as returned by the time function to a nine-element list with the time correct for Greenwich Mean Time zone (a.k.a. GMT, UTC, etc.). 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 C language struct tm . 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.