如何获取Ruby中某个月份的天数,记录一年? [英] How to get the number of days in a given month in Ruby, accounting for year?

查看:190
本文介绍了如何获取Ruby中某个月份的天数,记录一年?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我相信Ruby中有一个很好的简单优雅的单行,给你一个月份的几天,比如1997年2月。这是什么?

解决方案

这是ActiveSupport的实现(稍微修改一下):

  COMMON_YEAR_DAYS_IN_MONTH = [无,31,28,31,30,31,30,31,31,30,31,30,31] 

def days_in_month(month,year = Time.now.year)
return 29 if month == 2&& Date.gregorian_leap?(年)
COMMON_YEAR_DAYS_IN_MONTH [月]
结束


I'm sure there's a good simple elegant one-liner in Ruby to give you the number of days in a given month, accounting for year, such as "February 1997". What is it?

解决方案

This is the implementation from ActiveSupport (a little adapted):

COMMON_YEAR_DAYS_IN_MONTH = [nil, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

def days_in_month(month, year = Time.now.year)
   return 29 if month == 2 && Date.gregorian_leap?(year)
   COMMON_YEAR_DAYS_IN_MONTH[month]
end

这篇关于如何获取Ruby中某个月份的天数,记录一年?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆