IntlDateFormatter::create
En esta página
IntlDateFormatter::create
datefmt_create
IntlDateFormatter::__construct
Crea un formateador de fecha
Descripción#
Estilo orientado a objetos
public static IntlDateFormatter::create(string $locale, [int $dateType], [int $timeType], [IntlTimeZone $timezone], [IntlCalendar $calendar], [string $pattern]): IntlDateFormatter
```php
Estilo orientado a objetos (constructor)
```php
public IntlDateFormatter::__construct(string $locale, [int $dateType], [int $timeType], [IntlTimeZone $timezone], [IntlCalendar $calendar], [string $pattern])
Estilo procedimental
datefmt_create(string $locale, [int $dateType], [int $timeType], [IntlTimeZone $timezone], [IntlCalendar $calendar], [string $pattern]): IntlDateFormatter
```php
Crea un formateador de fecha.
## Parámetros
`locale`
La configuración local a utilizar para formatear y analizar o `null` para utilizar el valor especificado en la configuración ini [intl.default_locale](#ini.intl.default-locale).
`dateType`
El tipo de fecha a utilizar (`none`, `short`, `medium`, `long`, `full`). Es una de las [constantes IntlDateFormatter](#intl.intldateformatter-constants).
`timeType`
Formato de hora determinado por una de las [constantes de IntlDateFormatter](#intl.intldateformatter-constants). El valor por omisión es `IntlDateFormatter::FULL`.
`timezone`
El identificador de la zona horaria. Por omisión, (esto también será el valor por omisión que se utilizará si se proporciona `null`) será el devuelto por la función `date_default_timezone_get` o, si es aplicable, el de objeto `IntlCalendar` pasado al argumento `calendar`. Este identificador debe ser un identificador válido en la base de datos ICU, o un identificador que represente una zona horaria explícita, como `GMT-05:30`.
Este argumento también puede ser un objeto `IntlTimeZone` o un objeto `DateTimeZone`.
`calendar`
Calendario a utilizar para el formato o el análisis. El valor por omisión es `null`, lo que corresponde a la constante `IntlDateFormatter::GREGORIAN`. Puede ser una de las [constantes de calendario IntlDateFormatter](#intl.intldateformatter-constants.calendartypes) o un `IntlCalendar`. Cualquier objeto `IntlCalendar` pasado será clonado; no será modificado por `IntlDateFormatter`. Determinará el tipo de calendario utilizado (gregoriano, islámico, persa, etc.) y si `null` es proporcionado en el argumento `timezone`, la zona horaria también será utilizada.
`pattern`
El patrón a utilizar para el formato o el análisis. Los patrones disponibles están documentados en <https://unicode-org.github.io/icu/userguide/format_parse/datetime/>.
## Valores devueltos
El objeto `IntlDateFormatter` creado, o `null` si ocurre un error.
## Errores/Excepciones
Se lanza una ValueError si `locale` es inválido.
## Historial de cambios
| Versión | Descripción |
|---------|--------------------------------------------------------------|
| 8.4.0 | Se lanza una ValueError si `locale` es inválido. |
| 8.1.0 | Los argumentos `dateType` y `timeType` ahora son opcionales. |
## Ejemplos
Ejemplo con `datefmt_create`, procedimental
Ejemplo con `datefmt_create`, POO
Ejemplo de manejo de configuración local inválida
```php
El ejemplo anterior mostrará:
El primer formato mostrado es Wednesday, December 31, 1969 4:00:00 PM PT
El segundo formato mostrado es Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00
El primer formato se muestra con el patrón: 12/31/1969
El segundo formato se muestra con el patrón: 12/31/1969
Véase también#
datefmt_format, datefmt_parse, datefmt_get_error_code, datefmt_get_error_message