Класс
DateTime в PHP предоставляет удобные инструменты для работы с датами и временем. Он заменяет устаревшие функции date(), strtotime() и делает код более читаемым и гибким. 🚩Что умеет `DateTime`?
Создавать даты и время.
Изменять, прибавлять, вычитать дни, месяцы, годы.
Преобразовывать дату в строку (
format()). Работать с часовыми поясами (
DateTimeZone). Сравнивать даты (
diff()). Преобразовывать в Unix Timestamp (
getTimestamp()). 🚩Примеры использования `DateTime`
1⃣Создание объекта
DateTime $date = new DateTime(); // Текущая дата и время
echo $date->format('Y-m-d H:i:s'); // 2025-02-24 15:30:00
2⃣Создание
DateTime с конкретной датой$date = new DateTime('2023-12-31 23:59:59');
echo $date->format('d.m.Y H:i'); // 31.12.2023 23:593⃣Прибавить / Вычесть дни, месяцы, годы (
modify())$date = new DateTime('2024-01-01');
$date->modify('+1 month'); // Добавить 1 месяц
echo $date->format('Y-m-d'); // 2024-02-01
$date->modify('-10 days'); // Вычесть 10 дней
echo $date->format('Y-m-d'); // 2024-01-224⃣Разница между датами (
diff())$date1 = new DateTime('2024-01-01');
$date2 = new DateTime('2025-01-01');
$diff = $date1->diff($date2);
echo $diff->days; // 366 (разница в днях)
echo $diff->y; // 1 (разница в годах)5⃣Работа с часовыми поясами (
DateTimeZone)$date = new DateTime('now', new DateTimeZone('America/New_York'));
echo $date->format('Y-m-d H:i:s'); // Время в Нью-Йорке6⃣Преобразование
DateTime в Timestamp (getTimestamp())$date = new DateTime('2024-01-01');
echo $date->getTimestamp(); // 1704067200 (Unix-время)7⃣Создание
DateTime из Timestamp (setTimestamp())$date = new DateTime();
$date->setTimestamp(1704067200);
echo $date->format('Y-m-d H:i:s'); // 2024-01-01 00:00:00
Ставь 👍 и забирай 📚 Базу знаний