IntlDateFormatter::formatObject
datefmt_format_object
(PHP 5 >= 5.5.0, PECL intl >= 3.0.0)
IntlDateFormatter::formatObject -- datefmt_format_object — Formate un objet
Description
Style orienté objet
$object
[, mixed $format
= NULL
[, string $locale
= NULL
]] )Style procédural
$object
[, mixed $format
= NULL
[, string $locale
= NULL
]] )Cette fonction permet le formatage d'un objet IntlCalendar ou d'un objet DateTime sans avoir créé auparavant un objet IntlDateFormatter.
L'objet IntlDateFormatter temporaire créé prendra le décalage horaire depuis l'objet passé. La base de données des décalages horaires interne à PHP ne sera pas utilisée - ICU sera utilisé à la place. L'identifiant de décalage horaire utilisé dans les objets DateTime doit toutefois exister également dans la base de données ICU.
Liste de paramètres
-
object
-
Un objet de type IntlCalendar ou de type DateTime. L'information de décalage horaire dans l'objet sera utilisée.
-
format
-
Format de la date/heure. Peut-être soit un tableau avec deux éléments (d'abord le style de la date, puis, le style de l'heure, en utilisant une des constantes suivantes :
IntlDateFormatter::NONE
,IntlDateFormatter::SHORT
,IntlDateFormatter::MEDIUM
,IntlDateFormatter::LONG
,IntlDateFormatter::FULL
), soit un type long avec la valeur de l'une de ces constantes (auquel cas, il sera utilisé à la fois pour la date et l'heure), ou un type string avec le format décrit dans la » documentation ICU. SiNULL
est fourni, le style par défaut sera utilisé. -
locale
-
La locale à utiliser, ou
NULL
pour utiliser la locale par défaut.
Valeurs de retour
Une chaîne de caractères contenant le résultat ou FALSE
si une erreur survient.
Exemples
Exemple #1 Exemple avec IntlDateFormatter::formatObject()
<?php /* Le décalage horaire par défaut n'est pas significatif ; il est pris depuis l'objet */ ini_set('date.timezone', 'UTC'); /* La locale par défaut est prise depuis la configuration ini */ ini_set('intl.default_locale', 'fr_FR'); $cal = IntlCalendar::fromDateTime("2013-06-06 17:05:06 Europe/Dublin"); echo "défault :\n\t", IntlDateFormatter::formatObject($cal), "\n"; echo "long \$format (complet) :\n\t", IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL), "\n"; echo "array \$format (aucun, complet) :\n\t", IntlDateFormatter::formatObject($cal, array( IntlDateFormatter::NONE, IntlDateFormatter::FULL)), "\n"; echo "string \$format (d 'de' MMMM y):\n\t", IntlDateFormatter::formatObject($cal, "d 'de' MMMM y", 'en_US'), "\n"; echo "avec DateTime :\n\t", IntlDateFormatter::formatObject( new DateTime("2013-09-09 09:09:09 Europe/Madrid"), IntlDateFormatter::FULL, 'es_ES'), "\n";
L'exemple ci-dessus va afficher :
défault : 6 juin 2013 17:05:06 long $format (complet): jeudi 6 juin 2013 17:05:06 heure d’été irlandaise array $format (aucun, complet): 17:05:06 heure d’été irlandaise string $format (d 'de' MMMM y): 6 de June 2013 avec DateTime : lunes, 9 de septiembre de 2013 09:09:09 Hora de verano de Europa central