| Classes | |
|---|---|
| AliasTimezoneResolver | Resolves Windows timezone names ("W. Europe Standard Time"), Outlook display names ("(UTC+01:00) Amsterdam, Berlin, ..."), prefixed names ("/mozilla.org/20070129_1/Europe/Paris"), quoted names and IANA names without their first part ("Argentina/Buenos_Aires"). The bundled map (CLDR plus aliases) is used first, so results do not depend on the ICU version; IntlTimeZone::getIDForWindowsID() of the intl extension is a fallback for newer Windows names. |
| CompositeTimezoneResolver | Asks the resolvers in order and returns the first result. |
| FallbackTimezoneResolver | Resolves every TZID to the configured timezone; use it as the last resolver. |
| IanaTimezoneResolver | Resolves IANA timezone names like "Europe/Prague" (case-insensitive). |
| ResolvedTimezone | |
| VTimezoneBuilder | Creates a VTIMEZONE component (RFC 5545, section 3.6.5) of a PHP timezone from its transitions (DateTimeZone::getTransitions()) in a range of time. Transitions of the same kind (offsets, abbreviation, DST) on the same weekday of a month (e.g. the last Sunday of March) in consecutive years become one observance with a yearly RRULE; other transitions are observances of their own. A rule still in use after the range has no UNTIL, so the definition also covers later dates while the timezone keeps the rule. The first observance is the transition in effect at the start of the range. |
| VTimezoneResolver | Resolves a TZID defined by a VTIMEZONE component of the calendar. PHP cannot create a timezone from custom rules, so the IANA timezone with the same transitions around the reference date is used (see TimezoneGuesser), preferring the timezone of the same name. A definition without transitions becomes a fixed offset. |
| Interfaces | |
| TimezoneResolver | Maps a TZID to a PHP timezone. |
| Enums | |
| TimezoneSource | Where a timezone came from. |