English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Руководство по функциям даты и времени PHP
Функция date_timezone_set() устанавливает часовой пояс объекта DateTime
date_timezone_set()Функция принимает объект DateTime и объект часового пояса в качестве параметров и устанавливает указанный часовой пояс для заданной даты и времени.
date_timezone_set($object, $timezone)
Номер | Параметры и описание |
---|---|
1 | object (обязателен) Это означает, что нужно установить часовой пояс для объекта DateTime. |
2 | timezone (обязателен) Это объект TimeZone, представляющий часовой пояс, который нужно установить для объекта DateTime. |
Функция date_timezone_set() возвращает объект DateTime. Если функция не удается, то возвращает булево значениеfalse.
Эта функция была добавлена в PHP версии 5.2.0 и доступна во всех более поздних версиях.
Ниже приведен пример использованияdate_timezone_set()и функцией timezone_name_get()-
<?php $date = date_create("25-09-1989"); $tz = new DateTimeZone('Asia/Shanghai'); $res = date_timezone_set($date, $tz); print("Часовой пояс: ".timezone_name_get(date_timezone_get($date))); ?>Проверим‹/›
Результат вывода
Часовой пояс: Asia/Shanghai
Ниже приведен пример создания объекта DateTime и часового пояса, а также установки часового пояса в другое значение-
<?php $date = new DateTime("25-09-1989", new DateTimeZone('Asia/Shanghai')); $res = date_timezone_set($date, timezone_open("Indian/Kerguelen")); print("Часовой пояс: ".timezone_name_get(date_timezone_get($date))); ?>Проверим‹/›
Результат вывода
Часовой пояс: Indian/Kerguelen
<?php $dateSrc = '2007-04-19 12:50 GMT'; $dateTime = date_create($dateSrc); $DateTimeZone = timezone_open('Asia/Shanghai'); date_timezone_set($dateTime, $DateTimeZone); $NewDateTimeZone = date_timezone_get($dateTime); echo 'Новая часовая зона: '. timezone_name_get($NewDateTimeZone); echo "\n"; #Использование второй функции. $dateTime = new DateTime($dateSrc); $DateTimeZone = timezone_open('Asia/Shanghai'); $dateTime->setTimezone($DateTimeZone); $NewDateTimeZone = $dateTime->getTimezone(); echo 'Новая часовая зона: '. timezone_name_get($NewDateTimeZone); ?>Проверим‹/›
Результат вывода:
Новая часовая зона: America/Chicago Новая часовая зона: America/Chicago