(PHP 5.5.0, PHP 7, PECL >= 3.0.0a1)
IntlCalendar::setTimeZone — Défini le fuseau horaire utilisé par ce calendrier
Style orienté objet
Style procédural
Défini un nouveau fuseau horaire pour ce calendrier. Le moment représenté par cet objet est préservé au détriment des valeurs des champs.
cal
La ressource IntlCalendar.
timeZone
Le nouveau fuseau horaire à utiliser par ce calendrier. Il peut être spécifié de la façon suivante :
NULL
, in which case the default timezone will be used, as specified in
the ini setting date.timezone or
through the function date_default_timezone_set() and as
returned by date_default_timezone_get().
An IntlTimeZone, which will be used directly.
A DateTimeZone. Its identifier will be extracted and an ICU timezone object will be created; the timezone will be backed by ICUʼs database, not PHPʼs.
A string, which should be a valid ICU timezone identifier. See IntlTimeZone::createTimeZoneIDEnumeration(). Raw offsets such as "GMT+08:30" are also accepted.
Retourne TRUE
en cas de succès, FALSE
si une erreur survient.
Exemple #1 Exemple avec IntlCalendar::setTimeZone()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
ini_set('intl.default_locale', 'es_ES');
$cal = new IntlGregorianCalendar(2013, 5 /* May */, 1, 12, 0, 0);
echo IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL), "\n";
echo "(instant {$cal->getTime()})\n";
$cal->setTimeZone(IntlTimeZone::getGMT());
echo IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL), "\n";
echo "(instant {$cal->getTime()})\n";
$cal->setTimeZone('GMT+03:33');
echo IntlDateFormatter::formatObject($cal, IntlDateFormatter::FULL), "\n";
echo "(instant {$cal->getTime()})\n";
L'exemple ci-dessus va afficher :
sábado, 1 de junio de 2013 12:00:00 Hora de verano de Europa occidental (instant 1370084400000) sábado, 1 de junio de 2013 11:00:00 GMT (instant 1370084400000) sábado, 1 de junio de 2013 14:33:00 GMT+03:33 (instant 1370084400000)