Метод setTimezone на класа DateTime
Методът setTimezone променя часовата зона на обект DateTime. Като параметър приема обект от клас DateTimeZone. Връща модифицирания обект DateTime.
Синтаксис
public DateTime::setTimezone(DateTimeZone $timezone): DateTime
Пример
Задаваме часова зона 'America/New_York' за текущата дата:
<?php
$date = new DateTime('now', new DateTimeZone('UTC'));
$date->setTimezone(new DateTimeZone('America/New_York'));
echo $date->format('Y-m-d H:i:s');
?>
Резултат от изпълнението на кода:
'2023-11-15 10:30:00'
Пример
Променяме часовата зона на съществуващ обект DateTime:
<?php
$date = new DateTime('2023-01-01 12:00:00', new DateTimeZone('Europe/Moscow'));
$date->setTimezone(new DateTimeZone('Asia/Tokyo'));
echo $date->format('Y-m-d H:i:s');
?>
Резултат от изпълнението на кода:
'2023-01-01 18:00:00'
Вижте също
-
функцията
date,
която форматира дата/час -
функцията
date_default_timezone_set,
която задава часова зона по подразбиране -
класът
DateTimeZone,
който представлява часова зона