(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Crear un formateador de fechas
Estilo orientado a objetos
$locale
,$datetype
,$timetype
,$timezone
= NULL,$calendar
= NULL,$pattern
= ""Estilo orientado a objetos (constructor)
$locale
,$datetype
,$timetype
,$timezone
= NULL,$calendar
= NULL,$pattern
= ""Estilo por procedimientos
$locale
,$datetype
,$timetype
,$timezone
= NULL,$calendar
= NULL,$pattern
= ""Crear un formateador de fechas.
locale
Configuración regional a usar al formatear o procesar, o null
para usar el valor especificado en el ajuste ini intl.default_locale.
datetype
Tipo de fecha a usar (none
, short
, medium
, long
, full
). Es una de las contantes de IntlDateFormatter. También puede ser null
, en cuyo caso se usará el tipo de fecha predeterminado de ICU.
timetype
Tipo de hora a usar (none
, short
, medium
, long
, full
). Es una de las contantes de IntlDateFormatter. También puede ser null
, en cuyo caso se usará el tipo de hora predeterminado de ICU.
timezone
ID de la zona horaria. El predeterminado (y el usado si se proporciona null
) es el devuelto por date_default_timezone_get() o, si es aplicable, aquel del objeto IntlCalendar pasado al parámetro calendar
. Este ID debe ser un identificador válido en la base de datos de ICU o un ID que represente un índice explícito, como GMT-05:30
.
También puede ser un objeto IntlTimeZone o DateTimeZone.
calendar
Calendario a usar al formatear o procesar. El valor predeteminado es null
, el cual corresponde a IntlDateFormatter::GREGORIAN
. También puede ser una de las constantes de calendario de IntlDateFormatter o un IntlCalendar. Cualquier objeto IntlCalendar pasado será clonado; no será cambiado por IntlDateFormatter. Esto determinará el tipo de calendario usado (gregoriano, islámico, persa, etc.) y, si se proporciona null
al parámetro timezone
, también la zona horaria usada.
pattern
Patrón opcional a usar al formatear o procesar. Los posibles patrones están documentados en » https://unicode-org.github.io/icu/userguide/format_parse/datetime/.
El IntlDateFormatter creado o false
en caso de error.
Versión | Descripción |
---|---|
5.5.0/PECL 3.0.0 | Se permite un objeto IntlCalendar para Los objetos de tipo IntlTimeZone y DateTimeZone están permitidos para Los identificadores de zonas horarias válidos (incluyendo string vacíos) ya no están permitidos para Si se proporciona |
Ejemplo #1 Ejemplo de datefmt_create()
<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN );
echo "La primera salida formateada es ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "es-ES", IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN );
echo "La segunda salida formateada es ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");
echo "La primera salida formateada con patrón es ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "es-ES", IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/MM/yyyy");
echo "La segunda salida formateada con patrón es ".datefmt_format( $fmt , 0);
?>
Ejemplo #2 Ejemplo orientado a objetos
<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN );
echo "La primera salida formateada es ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN );
echo "La segunda salida formateada es ".$fmt->format(0);
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");
echo "La primera salida formateada con patrón es ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN, "dd/MM/yyyy");
echo "La segunda salida formateada con patrón es ".$fmt->format(0);
?>
El resultado del ejemplo sería:
La primera salida formateada es Wednesday, December 31, 1969 4:00:00 PM PT La segunda salida formateada es Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00 La primera salida formateada con patrón es 12/31/1969 La segunda salida formateada con patrón es 12/31/1969