ԱŮװ
Ů
׷
Դװ
˼Դ
Ҿ̳
Ա
װ
װ
83ʱŮ
Ҿװ
Ա̳
Ա̳ Ҿװ Ҿ̳ 83ʱŮ ԱŮװ Ů ׷ Դװ ˼Դ װ Ա װ
首页 > tips > perl下的时间处理

perl下的时间处理

2009年6月20日 发表评论 阅读评论

获得unix时间:

1
2
3
4
5
#!/usr/bin/perl 
use strict;
use warnings;
 
print time;

获得当前系统时间:

1
print scalar localtime();

这里localtime()可带一个时间参数,默认是以当前的unix时间为参数,若要得到unix时间100秒的具体时间,可以用localtime(100)

unix时间转换成普通的日期时间:

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

$sec –> 秒
$min –> 分
$hour –> 时
$mday –> 当月的第几天(1..31)
$mon –> 月(0.11)
$year –> 年(1900..,从1900年开始,所以得加上1900才能得到当前年份)
$wday –> 一周中的第几天(0是星期天,然后1..6代表周一到周六)
$yday –> 一年中的第几天(0..365)
$isdst –> 夏令时标志,如果当前时间正在使用夏令时,则$isdst为1,否则为0。
执行localtime函数得到的就是由上面这些值所组成的一个字符串。

普通的日期时间转换成unix时间
有时候为了得到两次时间间隔,把普通日期时间转换成unix时间处理起来就方便多了。

1
2
3
use Time::Local;
my $time = timelocal($sec,$min,$hour,$mday,$mon,$year); 
# replace 'timelocal' with 'timegm' if your input date is GMT/UTC
分类: tips 标签: , , 2,217 views

收藏本文:Del.icio.us - Google书签 - 分享到Twitter - 收藏到鲜果 - yahoo收藏 - digg - 更多 »


转载请注明出处及作者信息

本文链接: http://blog.happysa.org/tips/time_in_perl.html


Creative Commons License

  1. 2009年6月28日21:07 | #1

    看不懂这个语言嘿嘿,看来需要补习下了。

  2. wuzhez
    2009年6月28日22:13 | #2

    @一米
    还是比较好学的,很多地方和php比较相似

  3. 2009年9月25日22:12 | #3

    暂时我还没有接触到perl ;-)

  4. 2009年9月25日22:23 | #4

    @Redhat
    在系统管理、字符串处理等方面perl还是相当好用的

  1. 2011年11月30日14:54 | #1
注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。