文章

Ruby and Rails 获取当前或指定月份的日期数

Rails

当前月份日期数

1
Time.days_in_month(Time.now.month, Time.now.year)

指定月份日期数

t为时间实例日期

1
Time.days_in_month(t.month, t.year)

取月份的所有日期

1
2
3
4
5
6
# Return Array
def get_days_in_month(month, year)
  days = Time.days_in_month(month, year)
  Array(1..days).map{|d| "#{year}-#{month}-#{"%02d" % d}" } # YYYY-MM-DD
end
puts get_days_in_month(2,2012)

Ruby

1
2
3
4
5
6
require 'date'

def days_in_month(month, year)
  Date.new(year, month, -1).day
end
puts days_in_month(2,2012)

原文:How to get the number of days in a given month in Ruby, accounting for year?

本文由作者按照 CC BY 4.0 进行授权