加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl获取系统时间

发布时间:2020-12-15 21:05:27 所属栏目:大数据 来源:网络整理
导读:? ?perl有两个取得时间的函数:localtime和gmtime ? 两个函数的用法一样,区别在于localtime为取得本地时间,gmtime格林威治时间。 ? ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); ? 其中: ? ? $sec代表秒数[0,59] ? ? $min代表

?

?perl有两个取得时间的函数:localtime和gmtime
?
两个函数的用法一样,区别在于localtime为取得本地时间,gmtime格林威治时间。
?
($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从1900年算起的年数,所以要获得当前年就需要在$year的基础上加上1900
? ? $wday从星期六算起,代表是在这周中的第几天[0-6]
? ? $yday从一月一日算起,代表是在这年中的第几天[0,364]
? ? $isdst只是一个flag
?
下面是一个获取当前系统时间的子函数:
?
 
 
  1. sub?getTime?
  2. {?
  3. ???#time()函数返回从1970年1月1日起累计秒数?
  4. ????my?$time?=?shift?||?time();?
  5. ?????
  6. ????my?($sec,$isdst)?=?localtime($time);?
  7. ?????
  8. ????$mon?++;?
  9. ????$sec??=?($sec<10)?"0$sec":$sec;#秒数[0,59]?
  10. ????$min??=?($min<10)?"0$min":$min;#分数[0,59]?
  11. ????$hour?=?($hour<10)?"0$hour":$hour;#小时数[0,23]?
  12. ????$mday?=?($mday<10)?"0$mday":$mday;#这个月的第几天[1,31]?
  13. ????$mon??=?($mon<9)?"0".($mon+1):$mon;#月数[0,要将$mon加1之后,才能符合实际情况。?
  14. ????$year+=1900;#从1900年算起的年数?
  15. ?????
  16. ????#$wday从星期六算起,代表是在这周中的第几天[0-6]?
  17. ????#$yday从一月一日算起,代表是在这年中的第几天[0,364]?
  18. ??#?$isdst只是一个flag?
  19. ????my?$weekday?=?('Sun','Mon','Tue','Wed','Thu','Fri','Sat')[$wday];?
  20. ????return?{?'second'?=>?$sec,?
  21. ?????????????'minute'?=>?$min,?
  22. ?????????????'hour'???=>?$hour,?
  23. ?????????????'day'????=>?$mday,?
  24. ?????????????'month'??=>?$mon,?
  25. ?????????????'year'???=>?$year,?
  26. ?????????????'weekNo'?=>?$wday,?
  27. ?????????????'wday'???=>?$weekday,?
  28. ?????????????'yday'???=>?$yday,?
  29. ?????????????'date'???=>?"$year$mon$mday"?
  30. ??????????};?
  31. }?
通过下面的方法调用:
?
 
 
  1. my?$date?=?&getTime();#获取当前系统时间的Hash?
  2. my?$ymd?=?$date->{date};#获取yyyymmdd这样的日期???
  3. my?$year=$date->{year};#获取年?
  4. my?$month=$date->{month};#获取月?
  5. my?$day=$date->{day};#获取日?
?
获取时分秒类似。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读