列出两个日期之间的天数

时间:2014-09-27 06:11:57

标签: ruby

我想列出两个日期之间的天数。我可以使用下面的代码列出几个月的数组。我怎么能改变它来显示两个日期之间的每一天?

require 'date'

date_from  = Date.parse('2011-05-14')
date_to    = Date.parse('2011-05-30')
date_range = date_from..date_to

date_months = date_range.map {|d| Date.new(d.year, d.month, 1) }.uniq
date_months.map {|d| d.strftime "%d/%m/%Y" }

puts date_months

1 个答案:

答案 0 :(得分:18)

我不知道你的意思是哪一天,因此我已经展示了所有方法。

#wday是星期几(0-6,星期日为零)。

 (date_from..date_to).map(&:wday)

#mday是该月的日期(1-31)。

(date_from..date_to).map(&:mday)

#yday是一年中的某一天(1-366)。

(date_from..date_to).map(&:yday)
OP对我的实际需求并不是很清楚。在我们之间发表一些评论后,我从OP's comment开始了解,OP正在寻找以下答案 -

(date_from..date_to).map(&:to_s)