Клас DateTimeZone
Класът DateTimeZone позволява работа с часови зони в PHP.
Приема в конструктора низ с идентификатор на времева зона.
Синтаксис
phpnew DateTimeZone(string $timezone);
Пример
Създаване на обект за времева зона за Москва:
php<?php
$timezone = new DateTimeZone('Europe/Moscow');
print_r($timezone);
?>
Резултат от изпълнението на кода:
phpDateTimeZone Object
(
'timezone_type' => 3
'timezone' => Europe/Moscow
)
Пример
Използване с класа DateTime:
php<?php
$timezone = new DateTimeZone('America/New_York');
$date = new DateTime('now', $timezone);
echo $date->format('Y-m-d H:i:s');
?>
Резултат от изпълнението на кода (текущо време в Ню Йорк):
php'2025-06-15 14:30:00'
Пример
Получаване на списък с всички налични времеви зони:
php<?php
$timezones = DateTimeZone::listIdentifiers();
print_r(array_slice($timezones, 0, 5));
?>
Резултат от изпълнението на кода:
php[
'Africa/Abidjan'
'Africa/Accra'
'Africa/Addis_Ababa'
'Africa/Algiers'
'Africa/Asmara'
]
Пример
Получаване на отместването на времевата зона от UTC:
php<?php
$timezone = new DateTimeZone('Asia/Tokyo');
echo $timezone->getOffset($date) / 3600;
?>
Резултат от изпълнението на кода:
php9
Вижте също
-
клас
DateTime,
за работа с дата и време -
клас
DateInterval,
който задава времеви интервал -
функция
date_default_timezone_set,
за задаване на времева зона по подразбиране