Конвертация timestamp'a (unixtime) в экземпляр класса DateTime
Встроенный PHP-класс DateTime наконец-то определил стандартный интерфейс для работы с датой и временем в PHP. Однако, конвертация значения даты в формате Unix time в экземпляр этого класса не так очевидна.
Первый способ:
$unixtime = time();
// Второй параметр (часовой пояс) игнорируется: время будет в UTC
$now = new DateTime('@' . $unixtime, new DateTimeZone('Europe/Kiev'));
echo($now->format(DATE_ATOM)); // Пример вывода: 2010-08-07T10:26:40+00:00
Второй способ:
$unixtime = time();
// Дата будет в нужном часовом поясе
$now = new DateTime(date(DATE_ATOM, $unixtime), new DateTimeZone('Europe/Kiev'));
echo($now->format(DATE_ATOM)); // Пример вывода: 2010-08-07T13:26:40+03:00
Обратите внимание на то, что полученные объекты используют разные часовые пояса.
