(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 = nullStyle orienté objet (constructeur)
$locale,$dateType = IntlDateFormatter::FULL,$timeType = IntlDateFormatter::FULL,$timezone = null,$calendar = null,$pattern = nullStyle procédural
$locale,$dateType = IntlDateFormatter::FULL,$timeType = IntlDateFormatter::FULL,$timezone = null,$calendar = null,$pattern = nullCré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
       Le type d'heure à utiliser (none, 
       short, medium, 
       long, full). 
       C'est l'une des  
       constantes IntlDateFormatter.
      
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é.
      
patternLe 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 | 
|---|---|
| 5.5.0/PECL 3.0.0 | 
         Un objet IntlCalendar est autorisé comme paramètre
          
         Des objects de type IntlTimeZone et de type
         DateTimeZone sont autorisés comme paramètre
          
         Les identifiants de fuseaux horaires invalides (incluant les chaînes vides)
         ne sont plus autorisés comme paramètre  
         Si  | 
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);
?>
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