使用Perl将2天添加到今天

Ste*_*arp 6 perl time

我想使用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)

  • @StevenTharp你应该接受他的回答:) (2认同)