Maison > Article > développement back-end > Comment lister les mois entre deux dates en PHP ?
Répertorier les mois entre deux dates
Énumérer les mois entre deux dates arbitraires peut sembler une tâche simple, mais elle devient plus complexe lorsqu'il s'agit de avec des cas extrêmes. Pour résoudre efficacement ce problème, nous pouvons exploiter diverses techniques de programmation.
Approche 1 : Utilisation des fonctions intégrées de PHP
Pour les versions PHP 5.3 et supérieures, nous pouvons utiliser les classes DateTime et DatePeriod.
<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>
Approche 2 : Utilisation de PHP pur (PHP 5.4 ou plus récent)
Si vous utilisez PHP 5.4 ou version ultérieure, nous pouvons rationaliser le codez comme suit :
<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>
Considérations :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!