1、time函数:返回从1970年1月1日起累计的秒数
使用:my $t=time();
2、 localtime函数:获取本地时区时间
使用:my $t=localtime(time());
3、gmtime函数: 获取格林威治时间
使用:my $t=gmtime(time());
得到格式化时间(以localtime函数为例):
my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time());
$sec:秒
$min:分
$hour:小时
$mday:日
$mon:月
$year:目前的年减去1990,不是仅将19xx年的19去掉,因此不会有Y2K的困扰。
$wday:每周的日期(如Sunday是0)
$yday:每年的日期(如Jan 1是0)
$isdst:如果日光节约时间使用则是正值,其它为0。
4、POSIX 函数 strftime() 可以将时间格式化为我们想要的格式。
#!/usr/bin/perl
use POSIX qw(strftime);
$datestring = strftime "%Y-%m-%d %H:%M:%S", localtime;
printf("时间日期 - $datestring\n");
# GMT 格式化时间日期
$datestring = strftime "%Y-%m-%d %H:%M:%S", gmtime;
printf("时间日期 - $datestring\n");
得到一个小时以前的时间
perl -MPOSIX -le 'print strftime "%c", localtime(time()-3600);'
得到一天前的时间
perl -MPOSIX -le 'print strftime "%c", localtime(time()-86400);'