(PHP 8 >= 8.3.0)
DatePeriod::createFromISO8601String — Erstellt ein neues DatePeriod-Objekt aus einer ISO8601-Zeichenkette
   Erstellt ein neues DatePeriod-Objekt aus der mit
   specification angegebenen ISO8601-Zeichenkette.
  
specificationEine Teilmenge der » ISO-8601-Spezifikation für sich wiederholende Intervalle.
Ein Beispiel für eine zulässige ISO 8601-Intervallangabe ist R5/2008-03-01T13:00:00Z/P1Y2M10DT2H30M und bedeutet:
R5/)
       
      2008-03-01T13:00:00Z.
       
      /P1Y2M10DT2H30M).
       
      Beispiele für Features der ISO-8601-Spezifikation für Intervalle, die von PHP nicht unterstützt werden, sind:
R0/)
       
      Z), wie
        +02:00.
       
      optionsEin Bitfeld, mit dem ein bestimmtes Verhalten bezüglich der Start- und Enddaten gesteuert werden kann.
      Mit DatePeriod::EXCLUDE_START_DATE wird das
      Startdatum aus der Menge der wiederkehrenden Termine innerhalb des
      Zeitraums ausgeschlossen.
     
      Mit DatePeriod::INCLUDE_END_DATE wird das Enddatum
      in die Menge der wiederkehrenden Termine innerhalb des Zeitraums
      aufgenommen.
     
Erstellt ein neues DatePeriod-Objekt.
DatePeriod-Objekte können als Iterator verwendet werden, um eine Reihe von DateTimeImmutable-Objekten zu erzeugen.
   Wenn specification nicht als gültiger
   ISO-8601-Zeitraum analysiert werden kann, wird eine
   DateMalformedPeriodStringException geworfen.
  
Beispiel #1 DatePeriod::createFromISO8601String-Beispiel
<?php
$iso = 'R4/2023-07-01T00:00:00Z/P7D';
$period = DatePeriod::createFromISO8601String($iso);
// Durch Iterieren über das DatePeriod-Objekt werden alle sich
// wiederholenden Termine innerhalb des Zeitraums ausgegeben.
foreach ($period as $date) {
    echo $date->format('Y-m-d'), "\n";
}
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
2023-07-01 2023-07-08 2023-07-15 2023-07-22 2023-07-29
