十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本文和大家重点讨论一下Perl时间函数的概念,Perl语言中有两个取得Perl时间函数:localtime()和gmtime(),两个函数的用法一样,区别在于localtime为取得本地时间,gmtime格林威治时间。

网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了谷城免费建站欢迎大家使用!
Perl时间函数
Perl语言中有两个取得Perl时间函数:localtime()和gmtime()
两个函数的用法一样,区别在于localtime为取得本地时间,gmtime格林威治时间
 #!/usr/bin/Perl
 #getlocaltime
 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
其中:
 $sec代表秒数[0,59]
 $min代表分数[0,59]
 $hour代表小时数[0,23]
 $mday代表是在这个月的第几天[1,31]
 $mon代表月数[0,11],要将$mon加1之后,才能符合实际情况。
$year从1990年算起的年数
 $wday从星期六算起,代表是在这周中的第几天[0-6]
 $yday从一月一日算起,代表是在这年中的第几天[0,364]
 $isdst只是一个flag
 知道这些变量之后,就可以在CGI应用程序中拿来应用了。此外,Perl时间函数也可以用下面这一行指令在UNIX系统下取得系统的时间。为了避免错误发生,***用绝对路径的方法来取得系统时间,如果绝对路径不清楚的话可以用”whichdata”这个指令来得知。***要提字符的话,就不能正确执行系统的程序了。$data=’/usr/bin/data’;而在Perl5版本中,也可以用下面这一行指令来取得系统时间
 Perl时间函数的例子:
 格式化所需要的时间变量:
 ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
 #2001年08月09日
 $yyyymmddZH=sprintf("%04d年%02d月%02d日",$year+1900,$mon+1,$mday);
 #2001年8月9日
 $yyyymmddZH2=sprintf("%d年%d月%d日",$year+1900,$mon+1,$mday);
 #2001.08.09
 $yyyymmdd=sprintf("%04d.%02d.%02d",$year+1900,$mon+1,$mday);
 #2001.08.09
$yyyymmdd2=sprintf("%d.%d.%d",$year+1900,$mon+1,$mday);
 #13点13分02秒
 $hhmmssZH=sprintf("%02d点%02d分%02d秒",$hour,$min,$sec);
 #13点13分2秒
 $hhmmssZH2=sprintf("%d点%d分%d秒",$hour,$min,$sec);
 #13:13:02
 $hhmmss=sprintf("%02d:%02d:%02d",$hour,$min,$sec);
#13:13:2
 $hhmmss2=sprintf("%d:%d:%d",$hour,$min,$sec);
 #周四
 $weekZH=sprintf("%s",("周日","周一","周二","周三","周四","周五","周六")[$wday]);
 #Thursday
 $weekE=sprintf("%s",("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")[$wday]);
 #Thu
 $week=sprintf("%s",("Sun","Mon","Tue","Wed","Thu","Fri","Sat")[$wday]);