GregorianCalendar
extends CalendarSystem
in package
Defines validation, conversion, and calendar-length behavior for the proleptic Gregorian calendar.
Table of Contents
Methods
- assertValidDay() : void
- Validates a calendar day.
- assertValidMonth() : void
- Validates a calendar month.
- assertValidYear() : void
- Validates a calendar year.
- daysInMonth() : int
- Returns the number of days in a Gregorian month.
- daysInYear() : int
- Returns the number of days in a Gregorian year.
- id() : Calendar
- Returns the Gregorian calendar identifier.
- instance() : static
- Returns the shared instance for the concrete calendar system.
- isLeapYear() : bool
- Determines whether a Gregorian year is leap.
- isValidDay() : bool
- Determines whether a day number is valid for a calendar month.
- isValidMonth() : bool
- Determines whether a month number is valid for a calendar year.
- isValidYear() : bool
- Determines whether a year number is valid for this calendar.
- monthsInYear() : int
- Returns the number of months in a year.
- toDayOfYear() : int
- Converts calendar date components to a day of year value.
- todayTimeZone() : DateTimeZone|null
- Returns the timezone used to resolve today's date.
- toJDN() : int
- Converts calendar date components to a Julian Day Number.
- toMonthDay() : array{0: int, 1: int}
- Converts a day of year value to calendar month and day components.
- toYearMonthDay() : array{0: int, 1: int, 2: int}
- Converts a Julian Day Number to calendar year, month, and day components.
- findYear() : int
- Finds the Gregorian year containing a Julian Day Number.
- firstDayOfYearJDN() : int
- Returns the Julian Day Number of the first day of a Gregorian year.
Methods
assertValidDay()
Validates a calendar day.
public
final assertValidDay(int $year, int $month, int $day) : void
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
- $day : int
-
Calendar day of month.
Tags
assertValidMonth()
Validates a calendar month.
public
final assertValidMonth(int $year, int $month) : void
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
Tags
assertValidYear()
Validates a calendar year.
public
assertValidYear(int $year) : void
Parameters
- $year : int
-
Calendar year.
Tags
daysInMonth()
Returns the number of days in a Gregorian month.
public
daysInMonth(int $year, int $month) : int
Parameters
- $year : int
-
Gregorian year.
- $month : int
-
Gregorian month number.
Tags
Return values
int —Number of days in the month.
daysInYear()
Returns the number of days in a Gregorian year.
public
daysInYear(int $year) : int
Parameters
- $year : int
-
Gregorian year.
Tags
Return values
int —Number of days in the year.
id()
Returns the Gregorian calendar identifier.
public
id() : Calendar
Tags
Return values
Calendar —Gregorian calendar identifier.
instance()
Returns the shared instance for the concrete calendar system.
public
final static instance() : static
Tags
Return values
static —Calendar system instance.
isLeapYear()
Determines whether a Gregorian year is leap.
public
isLeapYear(int $year) : bool
Parameters
- $year : int
-
Gregorian year.
Tags
Return values
bool —True when the year is leap, false otherwise.
isValidDay()
Determines whether a day number is valid for a calendar month.
public
isValidDay(int $year, int $month, int $day) : bool
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
- $day : int
-
Calendar day of month.
Return values
bool —True when the day is valid, false otherwise.
isValidMonth()
Determines whether a month number is valid for a calendar year.
public
isValidMonth(int $year, int $month) : bool
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
Return values
bool —True when the month is valid, false otherwise.
isValidYear()
Determines whether a year number is valid for this calendar.
public
isValidYear(int $year) : bool
Parameters
- $year : int
-
Calendar year.
Return values
bool —True when the year is valid, false otherwise.
monthsInYear()
Returns the number of months in a year.
public
monthsInYear(int $year) : int
Parameters
- $year : int
-
Calendar year.
Tags
Return values
int —Number of months in the year.
toDayOfYear()
Converts calendar date components to a day of year value.
public
toDayOfYear(int $year, int $month, int $day) : int
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
- $day : int
-
Calendar day of month.
Tags
Return values
int —Day of year, where 1 is the first day of the year.
todayTimeZone()
Returns the timezone used to resolve today's date.
public
todayTimeZone() : DateTimeZone|null
Return values
DateTimeZone|null —Timezone for today, or null for the default timezone.
toJDN()
Converts calendar date components to a Julian Day Number.
public
toJDN(int $year, int $month, int $day) : int
Parameters
- $year : int
-
Calendar year.
- $month : int
-
Calendar month number.
- $day : int
-
Calendar day of month.
Tags
Return values
int —Julian Day Number.
toMonthDay()
Converts a day of year value to calendar month and day components.
public
toMonthDay(int $year, int $dayOfYear) : array{0: int, 1: int}
Parameters
- $year : int
-
Calendar year.
- $dayOfYear : int
-
Day of year, where 1 is the first day of the year.
Tags
Return values
array{0: int, 1: int} —Calendar [month, day] components.
toYearMonthDay()
Converts a Julian Day Number to calendar year, month, and day components.
public
toYearMonthDay(int $jdn) : array{0: int, 1: int, 2: int}
Parameters
- $jdn : int
-
Julian Day Number.
Tags
Return values
array{0: int, 1: int, 2: int} —Calendar [year, month, day] components.
findYear()
Finds the Gregorian year containing a Julian Day Number.
protected
findYear(int $jdn) : int
Parameters
- $jdn : int
-
Julian Day Number.
Tags
Return values
int —Gregorian year containing the Julian Day Number.
firstDayOfYearJDN()
Returns the Julian Day Number of the first day of a Gregorian year.
protected
firstDayOfYearJDN(int $year) : int
Parameters
- $year : int
-
Gregorian year.
Tags
Return values
int —Julian Day Number of the year's first day.