localtime
- localtime
Converts a time as returned by the time function to a 9-element list with the time analyzed for the local time zone. Typically used as follows:
All list elements are numeric and come straight out of the C `struct tm'.
$sec,$min, and$hourare the seconds, minutes, and hours of the specified time.$mdayis the day of the month and$monthe month in the range0..11, with 0 indicating January and 11 indicating December. This makes it easy to get a month name from a list:$yearcontains the number of years since 1900. To get a 4-digit year write:- $year += 1900;
To get the last two digits of the year (e.g., "01" in 2001) do:
- $year = sprintf("%02d", $year % 100);
$wdayis the day of the week, with 0 indicating Sunday and 3 indicating Wednesday.$ydayis the day of the year, in the range0..364(or0..365in leap years.)$isdstis true if the specified time occurs during Daylight Saving Time, false otherwise.If EXPR is omitted,
localtime()uses the current time (as returned by time(3)).In scalar context,
localtime()returns the ctime(3) value:- $now_string = localtime; # e.g., "Thu Oct 13 04:54:34 1994"
The format of this scalar value is not locale-dependent but built into Perl. For GMT instead of local time use the gmtime builtin. See also the
Time::Localmodule (for converting seconds, minutes, hours, and such back to the integer value returned by time()), and the POSIX module's strftime(3) and mktime(3) functions.To get somewhat similar but locale-dependent date strings, set up your locale environment variables appropriately (please see perllocale) and try for example:
Note that the
%aand%b, the short forms of the day of the week and the month of the year, may not necessarily be three characters wide.The Time::gmtime and Time::localtime modules provide a convenient, by-name access mechanism to the gmtime() and localtime() functions, respectively.
For a comprehensive date and time representation look at the DateTime module on CPAN.
Portability issues: localtime in perlport.