(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::createInstance — Crée un nouvel objet IntlCalendar
Style orienté objet
$timezone = null, ?string $locale = null): ?IntlCalendarStyle procédural
$timezone = null, ?string $locale = null): ?IntlCalendarEn fournissant un fuseau horaire, et une locale, cette méthode crée un objet IntlCalendar. Cette méthode d'usine peut retourner une sous-classe de la classe IntlCalendar.
Le calendrier créé représentera l'instance du temps au moment où il a été créé, basé suivant le temps du système. Les champs peuvent être vidés avec la méthode IntCalendar::clear() sans argument. Voir aussi la méthode IntlGregorianCalendar::__construct().
timezoneLe fuseau horaire à utiliser.
null, dans quel cas le fuseau horaire par défaut sera utilisé,
comme spécifié dans le paramètre de configuration du fichier ini
date.timezone ou par la fonction
date_default_timezone_set() et comme retourné par
date_default_timezone_get().
Un IntlTimeZone, qui sera utilisé directement.
Un DateTimeZone. Son identifiant sera extrait et un objet de fuseau horaire ICU sera créé; le fuseau horaire sera soutenu par la base de données de l'ICU, et non par PHP.
Une string, qui devrait être un identifiant de fuseau horaire ICU valide.
Voir IntlTimeZone::createTimeZoneIDEnumeration(). Les
décalages bruts tels que "GMT+08:30" sont aussi acceptés.
locale
Une locale à utiliser, ou null pour utiliser la
locale par défaut.
L'instance de l'objet IntlCalendar créé,
ou null si une erreur survient.
Exemple #1 Exemple avec IntlCalendar::createInstance()
<?php
ini_set('intl.default_locale', 'es_ES');
ini_set('date.timezone', 'Europe/Madrid');
$cal = IntlCalendar::createInstance();
echo "Aucun argument\n";
var_dump(get_class($cal),
IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
echo "\n";
echo "Fuseau horaire explicite\n";
$cal = IntlCalendar::createInstance(IntlTimeZone::getGMT());
var_dump(get_class($cal),
IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));
echo "\n";
echo "Locale explicite (avec le calendrier)\n";
$cal = IntlCalendar::createInstance(NULL, 'es_ES@calendar=persian');
var_dump(get_class($cal),
IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL));L'exemple ci-dessus va afficher :
Aucun argument string(21) "IntlGregorianCalendar" string(68) "martes 18 de junio de 2013 14:11:02 Hora de verano de Europa Central" Fuseau horaire explicite string(21) "IntlGregorianCalendar" string(45) "martes 18 de junio de 2013 12:11:02 GMT+00:00" Locale explicite (avec le calendrier) string(12) "IntlCalendar" string(70) "martes 28 de Khordad de 1392 14:11:02 Hora de verano de Europa Central"