IntlDateFormatter::setTimeZone
datefmt_set_timezone
(PHP 5 >= 5.5.0, PHP 7, PECL intl >= 3.0.0)
IntlDateFormatter::setTimeZone -- datefmt_set_timezone — Sets formatterʼs timezone
Описание
Объектно-ориентированный стиль
Процедурный стиль
Sets the timezone used for the IntlDateFormatter. object.
Список параметров
-
fmt
-
The formatter resource.
-
zone
-
The timezone to use for this formatter. This can be specified in the following forms:
-
Если
null
, то будет использована временная зона по умолчанию, заданная в ini-настроке date.timezone либо с помощью функции date_default_timezone_set() и возвращенная функцией date_default_timezone_get(). -
Объект класса IntlTimeZone.
-
Объект класса DateTimeZone. Его идентификатор будет извлечен и на его основе будет создан объект временной зоны ICU; временная зона будет сохранена в базе данных ICU, а не PHP.
-
Строка, являющаяся корректным идентификатором временной зоны ICU. Смотрите IntlTimeZone::createTimeZoneIDEnumeration(). "Сырые" смещения, типа
"GMT+08:30"
, также поддерживаются.
-
Возвращаемые значения
Returns true
on success and false
on failure.
Примеры
Пример #1 IntlDateFormatter::setTimeZone() examples
<?php
ini_set('date.timezone', 'Europe/Amsterdam');
$formatter = IntlDateFormatter::create(NULL, NULL, NULL, "UTC");
$formatter->setTimeZone(NULL);
echo "NULL\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone(IntlTimeZone::createTimeZone('Europe/Lisbon'));
echo "IntlTimeZone\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone(new DateTimeZone('Europe/Paris'));
echo "DateTimeZone\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone('Europe/Rome');
echo "String\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone('GMT+00:30');
print_r($formatter->getTimeZone());
Результат выполнения данного примера:
NULL Europe/Amsterdam IntlTimeZone Europe/Lisbon DateTimeZone Europe/Paris String Europe/Rome IntlTimeZone Object ( [valid] => 1 [id] => GMT+00:30 [rawOffset] => 1800000 [currentOffset] => 1800000 )