English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основы PHP

Дополнительное руководство по PHP

PHP & MySQL

PHP Референс Мануал

Примеры использования и примеры функции date_timezone_set() в PHP

Руководство по функциям даты и времени 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

Эта функция была добавлена в 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