array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'de', ), 'this' => array ( 0 => 'intlcalendar.settimezone.php', 1 => 'IntlCalendar::setTimeZone', ), 'up' => array ( 0 => 'class.intlcalendar.php', 1 => 'IntlCalendar', ), 'prev' => array ( 0 => 'intlcalendar.settime.php', 1 => 'IntlCalendar::setTime', ), 'next' => array ( 0 => 'intlcalendar.todatetime.php', 1 => 'IntlCalendar::toDateTime', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/intl/intlcalendar/settimezone.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
IntlCalendar::setTimeZone — Set the timezone used by this calendar
Objektorientierter Stil
Prozeduraler Stil
$calendar
, IntlTimeZone|DateTimeZone|string|null $timezone
): boolDefines a new timezone for this calendar. The time represented by the object is preserved to the detriment of the field values.
calendar
Eine IntlCalendar-Instanz.
timezone
The new timezone to be used by this calendar. It can be specified in the following ways:
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.
Beispiel #1 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";
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
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)