Skip to content

Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →

class method

Date.valid_civil?

Date.valid_civil?(year, month, mday, start = Date::ITALY) → true or false

Returns true if the arguments define a valid ordinal date, false otherwise:

Example
Date.valid_date?(2001, 2, 3)  # => true
Date.valid_date?(2001, 2, 29) # => false
Date.valid_date?(2001, 2, -1) # => true

See argument start.

Related: Date.jd, Date.new.

See also .today .valid_commercial? .strptime .valid_date? also in 4.1 · 4.0 · 3.4 · 3.2 · 3.1 · 3.0