(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a2)
IntlCalendar::fromDateTime — Создаёт объект IntlCalendar из объекта DateTime или строки
Объектно-ориентированный стиль
$datetime, ?string $locale = null): ?IntlCalendarПроцедурный стиль
Метод создаёт объект IntlCalendar либо из объекта DateTime, либо из строки, из которой возможно создать объект DateTime.
Новый календарь представит тот же момент времени, который представляет объект DateTime, с возможной потерей точности для дат, для которых недостаточно исторических данных, или дат за пределами диапазона точного представления времени, и тот же часовой пояс с возможным расхождением в системах с разными базами данных часовых поясов.
datetimeОбъект DateTime или строка (string, которую возможно передать в метод DateTime::__construct().
Функция возвращает объект IntlCalendar или значение null, если возникла ошибка.
При передаче в первый параметр значения string каждое исключение,
которое возникнет внутри конструктора класса DateTime, всплывает по стеку вызовов.
Пример #1 Пример создания календаря из даты и времени методом IntlCalendar::fromDateTime()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
// Присваивание аналогично вызову IntlCalendar::fromDateTime(new DateTime(...))
$cal1 = IntlCalendar::fromDateTime('2013-02-28 00:01:02 Europe/Berlin', 'de_DE');
// Обратите внимание, что для календаря указали часовой пояс Europe/Berlin,
// а не Europe/Lisbon, который установили как пояс по умолчанию
echo IntlDateFormatter::formatObject($cal1, 'yyyy MMMM d HH:mm:ss VVVV', 'de_DE'), "\n";
?>Результат выполнения приведённого примера:
2013 Februar 28 00:01:02 Deutschland Zeit