Попадает ли текущая дата в указанный временной интервал, если годы начала и конца интервала отличаются?

Как определить, входит ли текущая дата в учебный год, учитывая изменяющиеся начало и конец учебного года, заданные в константах без указания года?
  • 11 марта 2024 г. 13:38
Ответы на вопрос 2
Да, текущая дата может попадать в указанный временной интервал, даже если годы начала и конца интервала отличаются. Например, если интервал задан как "1 сентября" - "31 мая", то текущая дата 15 декабря 2021 года попадает в этот интервал, хотя начало и конец интервала могут относиться к разным годам.

Чтобы определить, входит ли текущая дата в учебный год, учитывая изменяющиеся начало и конец учебного года, заданные в константах без указания года, необходимо использовать текущий год для определения принадлежности даты к учебному году. Например, если учебный год начинается 1 сентября и заканчивается 31 мая, то можно проверить, входит ли текущая дата в этот интервал для текущего года. Если текущая дата попадает в учебный год, то можно считать, что она входит в учебный год.
$date = new DateTimeImmutable();
$isInAcademicYear = (
    $date <= new DateTimeImmutable('31 May') ||
    $date >= new DateTimeImmutable('01 September')
);
var_dump($isInAcademicYear); // true
Похожие вопросы