The IntlDateFormatter class

Introduction

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)

Date Formatter is a concrete class that enables locale-dependent formatting/parsing of dates using pattern strings and/or canned patterns.

This class represents the ICU date formatting functionality. It allows users to display dates in a localized format or to parse strings into PHP date values using pattern strings and/or canned patterns.

Class synopsis

IntlDateFormatter {
/* Methods */
public __construct ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] )
public static create ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] ) : IntlDateFormatter
public format ( mixed $value ) : string
public static formatObject ( object $object [, mixed $format = NULL [, string $locale = NULL ]] ) : string|false
public getCalendar ( ) : int
public getDateType ( ) : int
public getErrorCode ( ) : int
public getErrorMessage ( ) : string
public getLocale ([ int $which ] ) : string
public getPattern ( ) : string
public getTimeType ( ) : int
public getTimeZoneId ( ) : string
public getCalendarObject ( ) : IntlCalendar
public getTimeZone ( ) : IntlTimeZone|false
public isLenient ( ) : bool
public localtime ( string $value [, int &$position ] ) : array
public parse ( string $value [, int &$position ] ) : int
public setCalendar ( mixed $which ) : bool
public setLenient ( bool $lenient ) : bool
public setPattern ( string $pattern ) : bool
public setTimeZoneId ( string $zone ) : bool
public setTimeZone ( mixed $zone ) : bool
}

See Also

Predefined Constants

These constants are used to specify different formats in the constructor for DateType and TimeType.

IntlDateFormatter::NONE (int)
Do not include this element
IntlDateFormatter::FULL (int)
Completely specified style (Tuesday, April 12, 1952 AD or 3:30:42pm PST)
IntlDateFormatter::LONG (int)
Long style (January 12, 1952 or 3:30:32pm)
IntlDateFormatter::MEDIUM (int)
Medium style (Jan 12, 1952)
IntlDateFormatter::SHORT (int)
Most abbreviated style, only essential data (12/13/52 or 3:30pm)
IntlDateFormatter::RELATIVE_FULL (int)
The same as IntlDateFormatter::FULL, but yesterday, today, and tomorrow show as yesterday, today, and tomorrow, respectively. Available as of PHP 8.0.0, for dateType only.
IntlDateFormatter::RELATIVE_LONG (int)
The same as IntlDateFormatter::LONG, but yesterday, today, and tomorrow show as yesterday, today, and tomorrow, respectively. Available as of PHP 8.0.0, for dateType only.
IntlDateFormatter::RELATIVE_MEDIUM (int)
The same as IntlDateFormatter::MEDIUM, but yesterday, today, and tomorrow show as yesterday, today, and tomorrow, respectively. Available as of PHP 8.0.0, for dateType only.
IntlDateFormatter::RELATIVE_SHORT (int)
The same as IntlDateFormatter::SHORT, but yesterday, today, and tomorrow show as yesterday, today, and tomorrow, respectively. Available as of PHP 8.0.0, for dateType only.

The following int constants are used to specify the calendar. These calendars are all based directly on the Gregorian calendar. Non-Gregorian calendars need to be specified in locale. Examples might include locale="hi@calendar=BUDDHIST".

IntlDateFormatter::TRADITIONAL (int)
Non-Gregorian Calendar
IntlDateFormatter::GREGORIAN (int)
Gregorian Calendar

Table of Contents

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.intldateformatter.php