IntlTimeZone::useDaylightTime
IntlDateFormatter::create
intl
PHP Manual

# The IntlDateFormatter class

(PHP 5 >= 5.3.0, 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 IntlDateFormatter create ( string `$locale` , int `$datetype` , int `$timetype` [, mixed `$timezone` = NULL [, mixed `$calendar` = NULL [, string `$pattern` = "" ]]] )
public string format ( mixed `$value` )
public static string formatObject ( object `$object` [, mixed `$format` = NULL [, string `$locale` = NULL ]] )
int getCalendar ( void )
public int getDateType ( void )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public string getLocale ([ int `$which` ] )
public string getPattern ( void )
public int getTimeType ( void )
public string getTimeZoneId ( void )
public IntlCalendar getCalendarObject ( void )
public IntlTimeZone getTimeZone ( void )
public bool isLenient ( void )
public array localtime ( string `$value` [, int `&$position` ] )
public int parse ( string `$value` [, int `&$position` ] )
bool setCalendar ( mixed `$which` )
public bool setLenient ( bool `$lenient` )
public bool setPattern ( string `$pattern` )
public bool setTimeZoneId ( string `$zone` )
public boolean setTimeZone ( mixed `$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` (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

- IntlDateFormatter::create — Create a date formatter
- IntlDateFormatter::format — Format the date/time value as a string
- IntlDateFormatter::formatObject — Formats an object
- IntlDateFormatter::getCalendar — Get the calendar type 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::getCalendarObject — Get copy of formatterʼs calendar object
- IntlDateFormatter::getTimeZone — Get formatterʼs timezone
- 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 type used by the formatter
- 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
- IntlDateFormatter::setTimeZone — Sets formatterʼs timezone

IntlTimeZone::useDaylightTime
IntlDateFormatter::create
intl
PHP Manual