Ruby:
将来または過去の日付を計算する
How to: (やり方)
Rubyで未来・過去の日付を計算するには、Date
クラスを使います。以下に簡単な例を示します。
require 'date'
today = Date.today
# 5日後
future_date = today + 5
# 5日前
past_date = today - 5
puts "今日: #{today}"
puts "5日後: #{future_date}"
puts "5日前: #{past_date}"
出力サンプルです:
今日: 2023-04-18
5日後: 2023-04-23
5日前: 2023-04-13
Deep Dive (詳細情報)
Date
クラスはRuby標準ライブラリに含まれているので、追加のgemをインストールする必要はありません。時間も含む計算にはTime
クラスやDateTime
クラスも使えます。ActiveSupport
のadvance
メソッドを使うと、より柔軟な日付計算が可能です(Railsでよく使われます)。DateTime
はマイクロ秒まで考慮するので、細かい時間管理が必要な場合はこちらを選びましょう。
See Also (関連情報)
- Ruby公式ドキュメント中の
Date
クラス: https://docs.ruby-lang.org/ja/latest/class/Date.html Time
クラスについて: https://docs.ruby-lang.org/ja/latest/class/Time.htmlActiveSupport
の拡張メソッド: https://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html- Rubyでの時刻処理に関するガイド: https://www.rubyguides.com/2015/12/ruby-time/