use Time::Piece qw(localtime); use Time::Seconds qw(ONE_DAY); my $t = localtime; my $yesterday = $t - ONE_DAY(); my $tomorrow = $t + ONE_DAY(); print "Today: ", $t->ymd(),"\n"; print "Yesterday: ", $yesterday->ymd(),"\n"; print "Tomorrow: ", $tomorrow->ymd(),"\n"; #### my $t = localtime->strptime(localtime->ymd(), '%Y-%m-%d'); my $yesterday = $t - ( 0.5 * ONE_DAY() ); my $tomorrow = $t + ( 1.5 * ONE_DAY() ); print "Today: ", $t->ymd(),"\n"; print "Yesterday: ", $yesterday->ymd(),"\n"; print "Tomorrow: ", $tomorrow->ymd(),"\n"; #### my $t = localtime->strptime('2013-03-11', '%Y-%m-%d'); my $yesterday = $t - ONE_DAY(); my $tomorrow = $t + ONE_DAY(); print "Today: ", $t->ymd(),"\n"; print "Yesterday: ", $yesterday->ymd(),"\n"; print "Tomorrow: ", $tomorrow->ymd(),"\n"; #Prints: Today: 2013-03-11 Yesterday: 2013-03-09 Tomorrow: 2013-03-12