MessageFormatter::setPattern
IntlDateFormatter::create
intl
PHP Manual

# The IntlDateFormatter class

## 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
IntlDateFormatter {
/* Methods */
__construct ( string `$locale` , int `$datetype` , int `$timetype` [, string `$timezone` [, int `$calendar` [, string `$pattern` ]]] )
static IntlDateFormatter create ( string `$locale` , int `$datetype` , int `$timetype` [, string `$timezone` [, int `$calendar` [, string `$pattern` ]]] )
string format ( mixed `$value` )
int getCalendar ( void )
int getDateType ( void )
int getErrorCode ( void )
string getErrorMessage ( void )
string getLocale ([ int `$which` ] )
string getPattern ( void )
int getTimeType ( void )
string getTimeZoneId ( void )
bool isLenient ( void )
array localtime ( string `$value` [, int `&$position` ] )
int parse ( string `$value` [, int `&$position` ] )
bool setCalendar ( int `$which` )
bool setLenient ( bool `$lenient` )
bool setPattern ( string `$pattern` )
bool setTimeZoneId ( string `$zone` )
}

## See Also

- » ICU Date formatter

- » ICU Date formats

## Predefined Constants

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

`IntlDateFormatter::NONE` ( string )
  Do not include this element
`IntlDateFormatter::FULL` ( string )
  Completely specified style (Tuesday, April 12, 1952 AD or 3:30:42pm PST)
`IntlDateFormatter::LONG` ( string )
  Long style (January 12, 1952 or 3:30:32pm)
`IntlDateFormatter::MEDIUM` ( string )
  Medium style (Jan 12, 1952)
`IntlDateFormatter::SHORT` ( string )
  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` ( string )
  Non-Gregorian Calendar
`IntlDateFormatter::GREGORIAN` ( string )
  Gregorian Calendar

## Table of Contents

- IntlDateFormatter::create — Create a date formatter
- IntlDateFormatter::format — Format the date/time value as a string
- IntlDateFormatter::getCalendar — Get the calendar used for the IntlDateFormatter
- IntlDateFormatter::getDateType — Get the datetype used for the IntlDateFormatter
- IntlDateFormatter::getErrorCode — Get the error code from last operation
- IntlDateFormatter::getErrorMessage — Get the error text from the last operation.
- IntlDateFormatter::getLocale — Get the locale used by formatter
- IntlDateFormatter::getPattern — Get the pattern used for the IntlDateFormatter
- IntlDateFormatter::getTimeType — Get the timetype used for the IntlDateFormatter
- IntlDateFormatter::getTimeZoneId — Get the timezone-id used for the IntlDateFormatter
- IntlDateFormatter::isLenient — Get the lenient used for the IntlDateFormatter
- IntlDateFormatter::localtime — Parse string to a field-based time value
- IntlDateFormatter::parse — Parse string to a timestamp value
- IntlDateFormatter::setCalendar — sets the calendar used to the appropriate calendar, which must be
- IntlDateFormatter::setLenient — Set the leniency of the parser
- IntlDateFormatter::setPattern — Set the pattern used for the IntlDateFormatter
- IntlDateFormatter::setTimeZoneId — Sets the time zone to use

MessageFormatter::setPattern
IntlDateFormatter::create
intl
PHP Manual