這個問題在這裏用於其他語言,所以讓我們來看看Ruby的一個。如何計算從給定日期以來在Ruby中經過了多少年?
如何計算從給定日期過去的完整年數?正如你可能猜到的那樣,這是自動計算人的年齡。最近的一個是distance_of_time_in_words
Rails的幫手,讓下面的模板
Jack is <%= distance_of_time_in_words (Time.now, Time.local(1950,03,22)) %> old.
產生
Jack is over 59 years old.
但是我需要得到公正數更精確的功能。有一個嗎?
如果存在某種類型的Ruby on Rails幫助函數,這是可以的,儘管純Ruby解決方案會更好。
編輯:問題的要點是需要一個非近似的解決方案。在三月的2 nd傑克應該59歲,第二天他應該是60歲。應考慮閏年等。
看來你不是隻回答了這個問題,而是以更好的方式提出了這個問題:-) – 2009-12-15 00:35:12
+1,但是如果我出生了,比如說Date.new(1980,2,29)呢? ;-) – 2009-12-15 08:54:08
@Mike Bummer - 沒有你的生日。好點子。修復了代碼。 – FMc 2009-12-15 12:43:24