It should be noted that the locale string passed into IntlDateFormatter's constructor supports UCA keywords. So you can, for example, do things like this to output the year as a Japanese era year:
<?php
$now = new DateTime(); //DateTime is a core PHP class as of version 5.2.0
$formatter = new IntlDateFormatter('ja_JP', IntlDateFormatter::FULL,
IntlDateFormatter::FULL, 'Asia/Tokyo', IntlDateFormatter::GREGORIAN);
echo 'It is now: "' . $formatter->format($now) . '" in Tokyo' . "\n";
//above gives [It is now: "2011年8月19日金曜日 23時32分27秒JST" in Tokyo]
$formatter = new IntlDateFormatter('ja_JP@calendar=japanese', IntlDateFormatter::FULL,
IntlDateFormatter::FULL, 'Asia/Tokyo', IntlDateFormatter::TRADITIONAL);
echo 'It is now: "' . $formatter->format($now) . '" in Tokyo' . "\n";
//above gives [It is now: "平成23年8月19日金曜日 23時32分27秒JST" in Tokyo]
?>
IntlDateFormatter::create
datefmt_create
IntlDateFormatter::__construct
(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
IntlDateFormatter::create -- datefmt_create -- IntlDateFormatter::__construct — Crée un formateur de date
Description
Style orienté objet
Style orienté objet (constructeur)
Style procédural
Crée un formateur de date
Liste de paramètres
- locale
-
La locale à utiliser pour formater et analyser.
- 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 IntlDateFormatter constants.
- timezone
-
L'identifiant du fuseau horaire, et celui du système par défaut.
- calendar
-
Le calendrier à utiliser pour formater ou analyser. Par défaut, c'est l'une des constantes IntlDateFormatter.
- 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
Exemples
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
Voir aussi
- datefmt_format() - Formate la date et l'heure sous forme de chaîne
- datefmt_parse() - Analyse une chaîne vers un timestamp
- datefmt_get_error_code() - Lit le code d'erreur de la dernière opération
- datefmt_get_error_message() - Lit le dernier message d'erreur
