DatePeriod::__construct

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

DatePeriod::__constructErstellt ein neues DatePeriod-Objekt

Beschreibung

public DatePeriod::__construct(
    DateTimeInterface $start,
    DateInterval $interval,
    int $recurrences,
    int $options = 0
)
public DatePeriod::__construct(
    DateTimeInterface $start,
    DateInterval $interval,
    DateTimeInterface $end,
    int $options = 0
)
public DatePeriod::__construct(string $isostr, int $options = 0)

Erstellt ein neues DatePeriod-Objekt.

Parameter-Liste

start

Das Startdatum des Zeitraums.

interval

Das Intervall zwischen den Wiederholungen innerhalb des Zeitraums.

recurrences

Die Anzahl der Wiederholungen.

end

Das Enddatum des Zeitraums.

isostr

Eine » ISO-8601-Spezifikation für sich wiederholende Intervalle. Null Vorkommen (R0/) werden nicht unterstützt.

options

Kann auf den Wert DatePeriod::EXCLUDE_START_DATE gesetzt werden, um das Startdatum aus den wiederkehrenden Terminen innnerhalb des Zeitraums auszuschließen.

Changelog

Version Beschreibung
7.2.19, 7.3.6, 7.4.0 recurrences muss jetzt größer als 0 sein.

Beispiele

Beispiel #1 DatePeriod-Beispiel

<?php
$start 
= new DateTime('2012-07-01');
$interval = new DateInterval('P7D');
$end = new DateTime('2012-07-31');
$recurrences 4;
$iso 'R4/2012-07-01T00:00:00Z/P7D';

// Alle diese Zeiträume sind gleichwertig.
$period = new DatePeriod($start$interval$recurrences);
$period = new DatePeriod($start$interval$end);
$period = new DatePeriod($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:

2012-07-01
2012-07-08
2012-07-15
2012-07-22
2012-07-29

Beispiel #2 DatePeriod-Beispiel mit DatePeriod::EXCLUDE_START_DATE

<?php
$start 
= new DateTime('2012-07-01');
$interval = new DateInterval('P7D');
$end = new DateTime('2012-07-31');

$period = new DatePeriod($start$interval$end,
                         
DatePeriod::EXCLUDE_START_DATE);

// Durch Iterieren über das DatePeriod-Objekt werden alle sich
// wiederholenden Termine innerhalb des Zeitraums ausgegeben.
// Es ist zu beachten, dass in diesem Fall 2012-07-01 nicht ausgegeben wird.
foreach ($period as $date) {
    echo 
$date->format('Y-m-d')."\n";
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

2012-07-08
2012-07-15
2012-07-22
2012-07-29

Anmerkungen

Die unbegrenzte Anzahl von Wiederholungen, wie von ISO 8601, Abschnitt 4.5 "Recurring time interval" spezifiziert, wird nicht unterstützt, d. h. weder die Übergabe von "R/..." an isostr noch die Übergabe von null an end funktioniert.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

[Freelancer] Web development: programming and design

Hy Guys, Web development really works best when clean programming supports a design that feels easy to use. A lot of projects look good visually, ...

Geschrieben von david737 am 25.04.2026 15:30:17
Forum: Archiv / Trash
Laravel Datenbankabfrage

A Laravel Datenbankabfrage feels like orchestrating a clean, decisive play—using Eloquent or the query builder, developers pull exactly the data ...

Geschrieben von fullmatchreplay am 24.04.2026 20:51:05
Forum: PHP Developer Forum
Problem bei Zugriff vom Ubuntu-Server via PHP-Scripte auf FBDatenbank(Windows)

Hy Guys, It sounds like a classic cross-platform issue Ubuntu PHP scripts talking to a Windows-hosted FB database can run into permission conflict ...

Geschrieben von johny75 am 24.04.2026 17:51:29
Forum: Linux und Unix
Doppelte Einträge werden beim sortieren rausgenommen. Was muss ich ändern?

:danke: Klappt super. Vielen herzlichen Dank! Macht mir das Leben um einiges einfacher!

Geschrieben von Spidermoose am 23.04.2026 12:16:36
Forum: PHP Developer Forum