Converts a time as returned by the time function to an 8-element list with the time localized for the standard Greenwich time zone. Typically used as follows:
# 0 1 2 3 4 5 6 7 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime(time);
All list elements are numeric, and come straight out of the C `struct tm'. $sec, $min, and $hour are the seconds, minutes, and hours of the specified time. $mday is the day of the month, and $mon is the month itself, in the range0..11
with 0 indicating January and 11 indicating December. $year is the number of years since 1900. That is, $year is123
in year 2023. $wday is the day of the week, with 0 indicating Sunday and 3 indicating Wednesday. $yday is the day of the year, in the range0..364
(or0..365
in leap years.)
Note that the $year element isnot simply the last two digits of the year. If you assume it is, then you create non-Y2K-compliant programs--and you wouldn't want to do that, would you?
The proper way to get a complete 4-digit year is simply:
$year += 1900;
And to get the last two digits of the year (e.g., '01' in 2001) do:
$year = sprintf("%02d", $year % 100);
If EXPR is omitted,gmtime()
uses the current time (gmtime(time)
).
In scalar context,gmtime()
returns the ctime(3) value:
$now_string = gmtime; # e.g., "Thu Oct 13 04:54:34 1994"
Also see thetimegm
function provided by theTime::Local
module, and the strftime(3) function available via the POSIX module.
This scalar value isnot locale dependent (seeperllocale), but is instead a Perl builtin. Also see theTime::Local
module, and the strftime(3) and mktime(3) functions available via the POSIX module. To get somewhat similar but locale dependent date strings, set up your locale environment variables appropriately (please seeperllocale) and try for example:
use POSIX qw(strftime);$now_string = strftime "%a %b %e %H:%M:%S %Y", gmtime;
Note that the%a
and%b
escapes, which represent the short forms of the day of the week and the month of the year, may not necessarily be three characters wide in all locales.
Perldoc Browser is maintained by Dan Book (DBOOK). Please contact him via theGitHub issue tracker oremail regarding any issues with the site itself, search, or rendering of documentation.
The Perl documentation is maintained by the Perl 5 Porters in the development of Perl. Please contact them via thePerl issue tracker, themailing list, orIRC to report any issues with the contents or format of the documentation.