use*_*151 2 perl timezone localtime
我正在使用以下代码打印当前时间.
use Getopt::Long;
use Time::Local;
sub gettime
{
my $t = time();
my ($sec,$mn,$hr,$mday,$mon,$yr,@left, $dstr);
($sec,$mn,$hr,$mday,$mon,$yr,@left) = localtime($t);
$yr = $yr-100+2000;
$mon += 1;
$dstr = sprintf "%02d:%02d:%02d (%02d-%02d-%04d)", $hr, $mn, $sec, $mon,
$mday, $yr;
print $dstr;
}
gettime();
Run Code Online (Sandbox Code Playgroud)
我可以使用 - local $ ENV {TZ} =":/ usr/share/lib/zoneinfo/America/Los_Angeles"来设置时区;
如何从localtime()中提取时区?
你可以使用strftime():
use POSIX;
$tz = strftime("%Z", localtime());
Run Code Online (Sandbox Code Playgroud)
或者,计算之间的差异localtime()和gmtime().