IntlDateFormatter::create

datefmt_create

IntlDateFormatter::__construct

(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)

IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__constructCrée un formateur de date

Description

Style orienté objet

public static IntlDateFormatter::create ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] ) : IntlDateFormatter

Style orienté objet (constructeur)

public IntlDateFormatter::__construct ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] )

Style procédural

datefmt_create ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] ) : IntlDateFormatter

Crée un formateur de date.

Liste de paramètres

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. Il peut aussi valoir NULL, auquel cas, le type de date par défaut d'ICU sera utilisé.

timetype

Le type d'heure à utiliser (none, short, medium, long, full). C'est l'une des constantes IntlDateFormatter. Il peut aussi valoir NULL, auquel cas, le type d'heure par défaut d'ICU sera utilisé.

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 » http://userguide.icu-project.org/formatparse/datetime.

Valeurs de retour

L'objet IntlDateFormatter créé, ou FALSE si une erreur survient.

Historique

Version Description
5.5.0/PECL 3.0.0

Un objet IntlCalendar est autorisé comme paramètre calendar.

Des objects de type IntlTimeZone et de type DateTimeZone sont autorisés comme paramètre timezone.

Les identifiants de fuseaux horaires invalides (incluant les chaînes vides) ne sont plus autorisés comme paramètre timezone.

Si NULL est fourni dans le paramètre timezone, l'identifiant du fuseau horaire fourni par le paramètre date_default_timezone_get() sera utilisé au lieu du fuseau horaire par défaut d'ICU.

Exemples

Exemple #1 Exemple avec datefmt_create(), procédural

<?php
$fmt 
datefmt_create"en_US" ,IntlDateFormatter::FULLIntlDateFormatter::FULL,
    
'America/Los_Angeles'IntlDateFormatter::GREGORIAN  );
echo 
"Le premier format affiché est ".datefmt_format$fmt 0);
$fmt datefmt_create"de-DE" ,IntlDateFormatter::FULLIntlDateFormatter::FULL,
    
'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo 
"Le deuxième format affiché est  ".datefmt_format$fmt 0);

$fmt datefmt_create"en_US" ,IntlDateFormatter::FULLIntlDateFormatter::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::FULLIntlDateFormatter::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::FULLIntlDateFormatter::FULL,
    
'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo 
"Le premier format affiché est ".$fmt->format(0);
$fmt = new IntlDateFormatter"de-DE" ,IntlDateFormatter::FULLIntlDateFormatter::FULL
    
'America/Los_Angeles',IntlDateFormatter::GREGORIAN  );
echo 
"Le deuxième format affiché est ".$fmt->format(0);

$fmt = new IntlDateFormatter"en_US" ,IntlDateFormatter::FULLIntlDateFormatter::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::FULLIntlDateFormatter::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
         

Voir aussi