АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
233 of 410 menu
Бесплатный курс по выкладке сайтов на хостинг. Разбираем все нюансы! Начало 14 октября. Жми для записи!

Метод createFromImmutable класса DateTime

Статический метод createFromImmutable класса DateTime создает новый изменяемый объект DateTime на основе неизменяемого объекта DateTimeImmutable.

Синтаксис

DateTime::createFromImmutable(DateTimeImmutable $object): DateTime

Пример

Создадим изменяемый объект DateTime из неизменяемого:

<?php $immutable = new DateTimeImmutable('2023-07-15'); $mutable = DateTime::createFromImmutable($immutable); echo $mutable->format('Y-m-d'); ?>

Результат выполнения кода:

'2023-07-15'

Пример

Продемонстрируем разницу между изменяемым и неизменяемым объектами:

<?php $immutable = new DateTimeImmutable('2023-07-15'); $mutable = DateTime::createFromImmutable($immutable); $mutable->modify('+1 day'); $newImmutable = $immutable->modify('+1 day'); echo $mutable->format('Y-m-d') . "\n"; echo $newImmutable->format('Y-m-d'); ?>

Результат выполнения кода:

'2023-07-16' '2023-07-16'

Пример

Создание изменяемого объекта с временной зоной:

<?php $timezone = new DateTimeZone('Europe/Moscow'); $immutable = new DateTimeImmutable('now', $timezone); $mutable = DateTime::createFromImmutable($immutable); echo $mutable->format('Y-m-d H:i:s e'); ?>

Результат выполнения кода:

'2023-07-15 14:30:00 Europe/Moscow'

Смотрите также

  • класс DateTimeImmutable,
    который представляет неизменяемую дату и время
byenru