(PHP 5 >= 5.5.0, PHP 7, PHP 8)
DateTimeImmutable::setTimezone — Устанавливает часовой пояс
Метод клонирует текущий объект даты и времени DateTimeImmutable, устанавливает в копии часовой пояс и возвращает изменённую копию объекта DateTimeImmutable.
timezoneОбъект DateTimeZone, который представляет часовой пояс.
Метод возвращает новый модифицированный объект DateTimeImmutable для цепочки методов. При вызове метода исходный объект, который представляет момент времени, не изменяется.
Пример #1 Пример установки часового пояса методом DateTimeImmutable::setTimeZone()
Объектно-ориентированный стиль
<?php
$date = new DateTimeImmutable('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo $date->format('Y-m-d H:i:sP') . "\n";
$newDate = $date->setTimezone(new DateTimeZone('Pacific/Chatham'));
echo $newDate->format('Y-m-d H:i:sP') . "\n";
?>Результат выполнения приведённых примеров:
2000-01-01 00:00:00+12:00 2000-01-01 01:45:00+13:45