IntlDateFormatter
PHP Manual

IntlDateFormatter::formatObject

datefmt_format_object

(PHP 5 >= 5.5.0, PECL intl >= 3.0.0)

IntlDateFormatter::formatObject -- datefmt_format_objectFormatea un objeto

Descripción

Estilo orientado a objetos

public static string IntlDateFormatter::formatObject ( object $object [, mixed $format = NULL [, string $locale = NULL ]] )

Estilo por procedimientos

public static string datefmt_format_object ( object $object [, mixed $format = NULL [, string $locale = NULL ]] )

Esta función permite formatear un objeto IntlCalendar o DateTime sin crear primero explícitamente un objeto IntlDateFormatter.

El objeto IntlDateFormatter temporal que se creará tomará la zona horaria del objeto pasado. La base de datos de zonas horarias incluida con PHP no se usara; se usará en su lugar la de ICU. El identificador de zona horaria usado en objetos DateTime debe, por lo tanto, existir también en la base de datos de ICU.

Parámetros

object

Un objeto de tipo IntlCalendar o DateTime. Se usrará la información de la zona horaria del objeto.

format

Cómo formatear la fecha/hora. Puede ser un array con dos elementos (el primero el estilo de fecha, y luego el estilo de la hora, siendo ambos una de las constantes IntlDateFormatter::NONE, IntlDateFormatter::SHORT, IntlDateFormatter::MEDIUM, IntlDateFormatter::LONG, IntlDateFormatter::FULL), un long con el valor de una de estas constantes (en cuyo caso se usará tanto para la hora como para la fecha) o un string con el formato descrito en » la documentación de ICU. Si es NULL, se utilizará el estilo predeterminado.

locale

La configuración regional a usar, o NULL para usar la predeterminada.

Valores devueltos

Un string con resultados o FALSE en caso de error.

Ejemplos

Ejemplo #1 Ejemplos de IntlDateFormatter::formatObject()

<?php
/* la zona horaria predeterminada es irrelevante; se toma del objeto */
ini_set('date.timezone''UTC');
/* la configuración regional predeterminada se toma de este ajuste ini */
ini_set('intl.default_locale''fr_FR');

$cal IntlCalendar::fromDateTime("2013-06-06 17:05:06 Europe/Dublin");
echo 
"predeterminado:\n\t",
        
IntlDateFormatter::formatObject($cal),
        
"\n";

echo 
"long \$format (full):\n\t",
        
IntlDateFormatter::formatObject($calIntlDateFormatter::FULL),
        
"\n";

echo 
"array \$format (none, full):\n\t",
        
IntlDateFormatter::formatObject($cal, array(
                
IntlDateFormatter::NONE,
                
IntlDateFormatter::FULL)),
        
"\n";

echo 
"string \$format (d 'of' MMMM y):\n\t",
        
IntlDateFormatter::formatObject($cal"d 'of' MMMM y"'en_US'),
        
"\n";

echo 
"con DateTime:\n\t",
        
IntlDateFormatter::formatObject(
                new 
DateTime("2013-09-09 09:09:09 Europe/Madrid"),
                
IntlDateFormatter::FULL,
                
'es_ES'),
        
"\n";

El resultado del ejemplo sería:

predeterminado:
    6 juin 2013 17:05:06
long $format (full):
    jeudi 6 juin 2013 17:05:06 heure d’été irlandaise
array $format (none, full):
    17:05:06 heure d’été irlandaise
string $format (d 'of' MMMM y):
    6 of June 2013
con DateTime:
    lunes, 9 de septiembre de 2013 09:09:09 Hora de verano de Europa central


IntlDateFormatter
PHP Manual