Re: [問題] 日期的加減法?

看板Perl作者 (opmsg.com)時間14年前 (2009/08/20 10:19), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/6 (看更多)
※ 引述《tumc (HIHIHI)》之銘言: : 請問大家,日期可以做加減法嗎 : 比如如果我要固定得到 前天的日期 : 該如何得到呢? : 因為不同的月有不同的天數,有又閏年的問題... : 有沒有模組可以處厘這個問題呢? : 最好能有個函數是執行: 今日-2 = 前天 DateTime / DateTime::Tiny 這兩個 CPAN 模組都是最正確的選擇。 需要「甜」一點的話可以用 autobox::DateTime::Duration : $d = 2->days->ago; 這樣寫法可以讓 $d 是表示「兩天前」的 DateTime 物件。 如果都不能用 CPAN 模組的話,自已手動減也很容易: # 先取得 2 天前此時的 timestamp $t = time - 86400 * 2; # 直接印出來 print localtime($t); # 只取年、月、日三個值 ($mday, $month, $year) = (localtime($t))[3, 4, 5]; 不過最麻煩的是時區處理,只要一有這個需要我一定直接用 DateTime。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 121.254.78.40
文章代碼(AID): #1AZBAxGW (Perl)
討論串 (同標題文章)
文章代碼(AID): #1AZBAxGW (Perl)