PHP Conference Nagoya 2025

IntlCalendar::setTimeZone

(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)

IntlCalendar::setTimeZoneSet the timezone used by this calendar

说明

面向对象风格

public IntlCalendar::setTimeZone(IntlTimeZone|DateTimeZone|string|null $timezone): bool

过程化风格

intlcal_set_time_zone(IntlCalendar $calendar, IntlTimeZone|DateTimeZone|string|null $timezone): bool

Defines a new timezone for this calendar. The time represented by the object is preserved to the detriment of the field values.

参数

calendar

IntlCalendar 实例。

timezone

The new timezone to be used by this calendar. It can be specified in the following ways:

返回值

Returns true on success and false on failure.

示例

示例 #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";

以上示例会输出:

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)

添加备注

用户贡献的备注

此页面尚无用户贡献的备注。
To Top