Hallo,
Erst einmal musst Du wissen, wie viele Tage in dem Monat sind, das kannst Du z.B. kurz selbst programmieren (die sind ja fest bzw. Februar hat alle 4 Jahre einen Tag mehr, alle 100 Jahre wieder nicht und alle 400 Jahre doch wieder)
Da mir das zu komplizert erschien ...
oder schauen, ob die Date-Klasse von Ruby Dir eine Funktion dafür bietet.
... habe ich mir mit der Date-Klasse folgende Methode gebaut:
# Calculates the amount of days in a month
def days_in_month (m=Time.now.month, y=Time.now.year)
require 'date'
return Date.new(m.year, m.month + 1) - m if m.kind_of? Date
if m.kind_of? Integer and m >= 1 and m <= 12 and y.kind_of? Integer
return (Date.new(m == 12 ? y.to_i + 1 : y, m == 12 ? 1 : m + 1) - Date.new(y, m)).to_i
end
raise TypeError, 'expected numeric (1 to 12 for m) or date'
end
Grüße
Jeena Paradies