如何使用perl查找给定日期的下一个日期?

Mad*_*han 5 perl

我需要找到任何日期的下一个日期.

use strict;

my $entered_date="2011-11-30";
Run Code Online (Sandbox Code Playgroud)

在上面的代码中我想找到日期的下一个日期,它存储在$ entered_date变量中......请分享您的解决方案....

提前致谢...

al.*_*al. 6

use Time::Piece;
use Time::Seconds;
my $date = Time::Piece->strptime($entered_date, "%Y-%m-%d");
$date += ONE_DAY;
return $date->strftime("%Y-%m-%d");
Run Code Online (Sandbox Code Playgroud)

[编辑:改变%F%Y-%m-%d用于Wintendo兼容性.谢谢,@ bvr]

  • 刚尝试在Windows上 - 它看起来像`%F`修饰符与输入日期不匹配.如果你在两个地方都将它改为'%Y-%m-%d`就可以了. (2认同)

knb*_*knb 4

perl -MDate::Calc -E ' use Date::Calc qw(Add_Delta_Days);say join "-", Add_Delta_Days(2011,11,30,1);'

2011-12-1
Run Code Online (Sandbox Code Playgroud)

在脚本中(不是很安全)

use Date::Calc qw(Add_Delta_Days);
my $entered_date = "2011-12-31";
print join "-", Add_Delta_Days(split(/-/,$entered_date),1);'
Run Code Online (Sandbox Code Playgroud)

2012年1月1日