Heim >Backend-Entwicklung >PHP-Tutorial >Wie liste ich Monate zwischen zwei Daten in PHP auf?

Wie liste ich Monate zwischen zwei Daten in PHP auf?

DDD
DDDOriginal
2024-11-03 15:53:03703Durchsuche

How to List Months Between Two Dates in PHP?

Auflisten von Monaten zwischen zwei Daten

In verschiedenen Anwendungen ist es notwendig, Monate innerhalb eines bestimmten Datumsbereichs aufzulisten oder zu durchlaufen. Um dies zu erreichen, stellen wir zwei Lösungen in PHP vor, die auf unterschiedliche PHP-Versionen zugeschnitten sind.

PHP 5.3 und höher

<code class="php">$start = new DateTime('2010-12-02');
$start->modify('first day of this month');
$end = new DateTime('2012-05-06');
$end->modify('first day of next month');
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($start, $interval, $end);

foreach ($period as $dt) {
    echo $dt->format("Y-m") . "<br>\n";
}</code>

PHP 5.4 oder neuer

<code class="php">$start = (new DateTime('2010-12-02'))->modify('first day of this month');
$end = (new DateTime('2012-05-06'))->modify('first day of next month');
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($start, $interval, $end);

foreach ($period as $dt) {
    echo $dt->format("Y-m") . "<br>\n";
}</code>

Beachten Sie, dass die Änderung des Start- und Enddatums auf den ersten Tag jedes Monats eine vollständige Auflistung der gewünschten Monate gewährleistet und Fälle verhindert, in denen der Februar übersprungen werden könnte, wenn der aktuelle Tag höher als der aktuelle Tag ist letzter Tag.

Das obige ist der detaillierte Inhalt vonWie liste ich Monate zwischen zwei Daten in PHP auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn