作者ihower (好2ˇ)
看板Ruby
标题Re: [问题] 如何准确的计算出年龄?
时间Thu Oct 16 12:28:21 2008
※ 引述《shelary (喵小咩)》之铭言:
: 环境:
: Ruby 1.8.6 Rails 2.0
: 状况:
: 我有一个变数 birth 记载着某个人的生日
: 例如: 1986-10-16
: 当我想要计算这个人的年龄时, 该怎麽写会比较准确?
: 我现在是写这样:
: birth = Date.new(1986, 10, 16)
: age = (Date.today - birth).to_i / 365
: 但是这样似乎不太准确, 因为一年不一定是 365 天
: 还有什麽方法可以更准确的计算年龄吗?
就不要用到365啊... :p
today = Date.today
birthday = Date.new(1986, 12,31)
overflow = ( today.month > birthday.month ||
( today.month == birthday.month && today.day >= birthday.day )
)? 0 : 1
age = today.year.to_i - birthday.year.to_i - overflow
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.115.243.135