Why can't I ask for end date on a period based on recurrences?
I understand I never specified such a property, but it's a really easy calculation... shouldn't it be built in?
(PHP 5 >= 5.6.5, PHP 7, PHP 8)
DatePeriod::getEndDate — Возвращает конечную дату периода
Объектно-ориентированный стиль
Возвращает конечную дату периода.
У этой функции нет параметров.
Возвращает null
, если DatePeriod не содержит
конечной даты. Например, при инициализации с параметром
recurrences
или
isostr
без указания конечной даты.
Возвращает объект DateTimeImmutable,
когда DatePeriod инициализирован с объектом
DateTimeImmutable
в качестве параметра end
.
В противном случае возвращает клонированный объект (object) DateTime, представляющий дату окончания.
Пример #1 Пример использования DatePeriod::getEndDate()
<?php
$period = new DatePeriod(
new DateTime('2016-05-16T00:00:00Z'),
new DateInterval('P1D'),
new DateTime('2016-05-20T00:00:00Z')
);
$start = $period->getEndDate();
echo $start->format(DateTime::ISO8601);
?>
Результат выполнения приведённых примеров:
2016-05-20T00:00:00+0000
Пример #2 Пример использования DatePeriod::getEndDate() без даты окончания
<?php
$period = new DatePeriod(
new DateTime('2016-05-16T00:00:00Z'),
new DateInterval('P1D'),
7
);
var_dump($period->getEndDate());
?>
Результат выполнения приведённого примера:
NULL
Why can't I ask for end date on a period based on recurrences?
I understand I never specified such a property, but it's a really easy calculation... shouldn't it be built in?