Метод setDate класса DateTime
Метод setDate
изменяет дату в объекте DateTime
. Он принимает три параметра: год (целое число), месяц (целое число от 1 до 12) и день (целое число от 1 до 31). Возвращает модифицированный объект DateTime.
Синтаксис
public DateTime::setDate(int $year, int $month, int $day): DateTime
Пример
Установим новую дату 15 марта 2023 года:
<?php
$date = new DateTime();
$date->setDate(2023, 3, 15);
echo $date->format('Y-m-d');
?>
Результат выполнения кода:
'2023-03-15'
Пример
Автоматическая коррекция неверных дат (32 января преобразуется в 1 февраля):
<?php
$date = new DateTime();
$date->setDate(2023, 1, 32);
echo $date->format('Y-m-d');
?>
Результат выполнения кода:
'2023-02-01'
Пример
Установка даты с отрицательными значениями (переход на предыдущий год):
<?php
$date = new DateTime();
$date->setDate(2023, -1, 15);
echo $date->format('Y-m-d');
?>
Результат выполнения кода:
'2022-11-15'