(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Crée un formateur de date
Style orienté objet
$locale
,$dateType
= IntlDateFormatter::FULL,$timeType
= IntlDateFormatter::FULL,$timezone
= null
,$calendar
= null
,$pattern
= null
Style orienté objet (constructeur)
$locale
,$dateType
= IntlDateFormatter::FULL,$timeType
= IntlDateFormatter::FULL,$timezone
= null
,$calendar
= null
,$pattern
= null
Style procédural
$locale
,$dateType
= IntlDateFormatter::FULL,$timeType
= IntlDateFormatter::FULL,$timezone
= null
,$calendar
= null
,$pattern
= null
Crée un formateur de date.
locale
La locale à utiliser pour formater et analyser ou null
pour utiliser la valeur spécifiée dans la configuration ini intl.default_locale.
dateType
Le type de date à utiliser (none
, short
, medium
, long
, full
). C'est l'une des constantes IntlDateFormatter.
timeType
Format de l'heure déterminé par l'une des constantes d'IntlDateFormatter. La valeur par défaut est IntlDateFormatter::FULL
.
timezone
L'identifiant du fuseau horaire. Par défaut, (ce sera également la valeur par défaut qui sera utilisée si null
est fourni) ce sera celui retourné par la fonction date_default_timezone_get() ou, si applicable, celui de l'objet IntlCalendar passé au paramètre calendar
.Cet identifiant doit être un identifiant valide dans la base de données ICU, ou un identifiant représentant une possible explicite, comme GMT-05:30
.
Ce paramètre peut aussi être un objet IntlTimeZone ou un objet DateTimeZone.
calendar
Calendrier à utiliser pour le formatage ou l'analyse. La valeur par défaut est null
, ce qui correspond à la constante IntlDateFormatter::GREGORIAN
. Peut être une des constantes de calendrier IntlDateFormatter ou un IntlCalendar. Tout objet IntlCalendar passé sera clôné ; il ne sera pas modifié par IntlDateFormatter. Il déterminera le type de calendrier utilisé (grégorien, islamique, persien, etc.) et si null
est fourni dans le paramètre timezone
, le fuseau horaire sera également utilisé.
pattern
Le modèle à utiliser pour le formatage ou l'analyse. Les modèles disponibles sont documentés sur » https://unicode-org.github.io/icu/userguide/format_parse/datetime/.
L'objet IntlDateFormatter créé, ou null
si une erreur survient.
Version | Description |
---|---|
8.1.0 | Les paramètres |
Exemple #1 Exemple avec datefmt_create(), procédural
<?php
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles', IntlDateFormatter::GREGORIAN );
echo "Le premier format affiché est ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN );
echo "Le deuxième format affiché est ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");
echo "Le premier format est affiché avec le modèle : ".datefmt_format( $fmt , 0);
$fmt = datefmt_create( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");
echo "Le deuxième format est affiché avec le modèle : ".datefmt_format( $fmt , 0);
?>
Exemple #2 Exemple avec datefmt_create(), POO
<?php
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN );
echo "Le premier format affiché est ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN );
echo "Le deuxième format affiché est ".$fmt->format(0);
$fmt = new IntlDateFormatter( "en_US" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN ,"MM/dd/yyyy");
echo "Le premier format est affiché avec le modèle : ".$fmt->format(0);
$fmt = new IntlDateFormatter( "de-DE" ,IntlDateFormatter::FULL, IntlDateFormatter::FULL,
'America/Los_Angeles',IntlDateFormatter::GREGORIAN , "MM/dd/yyyy");
echo "Le deuxième format est affiché avec le modèle : ".$fmt->format(0);
?>
Exemple #3 Exemple de gestion de locale invalide
<?php
try {
$fmt = new IntlDateFormatter(
'locale_invalide',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'je_ne_sais_pas',
IntlDateFormatter::GREGORIAN,
);
} catch (\Error $e) {
// ...
}
?>
L'exemple ci-dessus va afficher :
Le premier format affiché est Wednesday, December 31, 1969 4:00:00 PM PT Le deuxième format affiché est Mittwoch, 31. Dezember 1969 16:00 Uhr GMT-08:00 Le premier format est affiché avec le modèle : 12/31/1969 Le deuxième format est affiché avec le modèle : 12/31/1969