我想使用perl并从今天起添加两天并将其输出为unix时间.我已经找到了很多关于如何将Unix时间转换为可读时间的信息,但我需要将输出作为unix时间.我找到了这个
my $time = time; # or any other epoch timestamp
my @months = ("Jan","Feb","Mar","Apr","May","Jun","Jul",
"Aug","Sep","Oct","Nov","Dec");
my ($sec, $min, $hour, $day,$month,$year) = (localtime($time))[0,1,2,3,4,5];
# You can use 'gmtime' for GMT/UTC dates instead of 'localtime'
print "Unix time ".$time." converts to ".$months[$month].
" ".$day.", ".($year+1900);
Run Code Online (Sandbox Code Playgroud)
如何获取当前时间并添加2天并输出为Unix时间.
mka*_*zan 16
你考虑过使用这个DateTime包吗?它包含许多日期操作和计算例程,包括添加日期的功能.
有一个常见问题,与实施例中,这里(特别是,见样品计算和DateTime格式部分).
这是一个片段:
use strict;
use warnings;
use DateTime;
my $dt = DateTime->now();
print "Now: " . $dt->datetime() . "\n";
print "Now (epoch): " . $dt->epoch() . "\n";
my $two_days_from_now = $dt->add(days => 2);
print "Two days from now: " . $two_days_from_now->datetime() . "\n";
print "Two days from now (epoch): " . $two_days_from_now->epoch() . "\n";
Run Code Online (Sandbox Code Playgroud)
其中产生以下输出:
Now: 2013-02-23T18:30:58
Now (epoch): 1361644258
Two days from now: 2013-02-25T18:30:58
Two days from now (epoch): 1361817058
Run Code Online (Sandbox Code Playgroud)