(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 factorielle 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().
timezone
Le 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 chaîne de caractères, 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"