The IntlDateFormatter class

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

Introduction

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
getCalendar ( void ) : int
public getDateType ( void ) : int
public getErrorCode ( void ) : int
public getErrorMessage ( void ) : string
public getLocale ([ int $which ] ) : string
public getPattern ( void ) : string
public getTimeType ( void ) : int
public getTimeZoneId ( void ) : string
public getCalendarObject ( void ) : IntlCalendar
public getTimeZone ( void ) : IntlTimeZone
public isLenient ( void ) : bool
public localtime ( string $value [, int &$position ] ) : array
public parse ( string $value [, int &$position ] ) : int
setCalendar ( mixed $which ) : bool
public setLenient ( bool $lenient ) : bool
public setPattern ( string $pattern ) : bool
public setTimeZoneId ( string $zone ) : bool
public setTimeZone ( mixed $zone ) : bool
}

Predefined Constants

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

IntlDateFormatter::NONE (integer)
Do not include this element
IntlDateFormatter::FULL (integer)
Completely specified style (Tuesday, April 12, 1952 AD or 3:30:42pm PST)
IntlDateFormatter::LONG (integer)
Long style (January 12, 1952 or 3:30:32pm)
IntlDateFormatter::MEDIUM (integer)
Medium style (Jan 12, 1952)
IntlDateFormatter::SHORT (integer)
Most abbreviated style, only essential data (12/13/52 or 3:30pm)

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 (integer)
Non-Gregorian Calendar
IntlDateFormatter::GREGORIAN (integer)
Gregorian Calendar

Table of Contents