1
我想顯示使用Time::Piece
昨天’的日期和超載字串和算術運算象下面這樣:時間::片顯示昨天的日期
use strict;
use warnings;
use feature qw(say);
use Time::Piece;
use Time::Seconds;
say " Today is " . localtime;
say "Yesterday is " . localtime - ONE_DAY;
Today is Mon Sep 22 15:09:00 2014
Yesterday is Tue Dec 30 16:00:00 1969
然而,隨着可以觀察,今日’的日期有效,但昨天’ s是在時代周圍。
一種解決方案是通過在做數學之前創建一個變量$today - ONE_DAY
。如所期望
Yesterday is 1969-12-30
Yesterday is 1969-12-30
Yesterday is 2014-09-21
Yesterday is 2014-09-21
的第三和上述工作第四方法:此外,以下其他格式揭示的更多信息:
my $fmt = '%Y-%m-%d';
say "Yesterday is ", (localtime - ONE_DAY )->strftime($fmt);
say "Yesterday is ", (+localtime - ONE_DAY )->strftime($fmt);
say "Yesterday is ", (scalar(localtime) - ONE_DAY)->strftime($fmt);
say "Yesterday is ", (- ONE_DAY + localtime )->strftime($fmt);
那麼’的交易?