• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Perl获取当前系统时间

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

perl有两个取得时间的函数:localtime和gmtime

转发用于记载,方便以后使用.原链接:https://www.cnblogs.com/hjj404/p/7992254.html,谢谢作者分享

两个函数的用法一样,区别在于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

下面是一个获取当前系统时间的子函数:


sub getTime

{

   #time()函数返回从1970年1月1日起累计秒数

    my $time = shift || time();

   
    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($time);

   
    $mon ++;

    $sec  = ($sec<10)?"0$sec":$sec;#秒数[0,59]

    $min  = ($min<10)?"0$min":$min;#分数[0,59]

    $hour = ($hour<10)?"0$hour":$hour;#小时数[0,23]

    $mday = ($mday<10)?"0$mday":$mday;#这个月的第几天[1,31]

    $mon  = ($mon<9)?"0".($mon+1):$mon;#月数[0,11],要将$mon加1之后,才能符合实际情况。

    $year+=1900;#从1900年算起的年数

    #$wday从星期六算起,代表是在这周中的第几天[0-6]

    #$yday从一月一日算起,代表是在这年中的第几天[0,364]

    #$isdst只是一个flag

    my $weekday = ('Sun','Mon','Tue','Wed','Thu','Fri','Sat')[$wday];

    return { 'second' => $sec,

             'minute' => $min,

             'hour'   => $hour,

             'day'    => $mday,

             'month'  => $mon,

             'year'   => $year,

             'weekNo' => $wday,

             'wday'   => $weekday,

             'yday'   => $yday,

             'date'   => "$year$mon$mday"

          };

}

通过下面的方法调用:

my $date = &getTime();#获取当前系统时间的Hash

my $ymd = $date->{date};#获取yyyymmdd这样的日期

my \(year=\)date->{year};#获取年

my \(month=\)date->{month};#获取月

my \(day=\)date->{day};#获取日

获取时分秒类似。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Perl正则表达式中的一些常用模式发布时间:2022-07-22
下一篇:
Perl子程序引用和匿名子程序发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap