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 — Liefert das Enddatum
Objektorientierter Stil
Ermittelt das Enddatum eines Zeitraums.
Diese Funktion besitzt keine Parameter.
Gibt null
zurück, wenn das DatePeriod-Objekt kein
Enddatum enthält. Zum Beispiel, wenn es mit dem Parameter
recurrences
oder dem Parameter
isostr
ohne Enddatum initialisiert wurde.
Wenn DatePeriod mit einem
DateTimeImmutable-Objekt als Parameter
end
initialisiert wird, wird ein
DateTimeImmutable-Objekt
zurückgegeben.
Andernfalls wird ein geklontes DateTime-Objekt zurückgegeben, das das Enddatum darstellt.
Beispiel #1 DatePeriod::getEndDate()-Beispiel
<?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);
?>
Die obigen Bespiele erzeugen folgende Ausgabe:
2016-05-20T00:00:00+0000
Beispiel #2 DatePeriod::getEndDate() ohne Enddatum
<?php
$period = new DatePeriod(
new DateTime('2016-05-16T00:00:00Z'),
new DateInterval('P1D'),
7
);
var_dump($period->getEndDate());
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
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?