Bonjour,
Je me casse la tête avec le problème suivant :
A partir d'une date définie, je souhaiterais récupérer les dates correspondant à 1 mois, 2 mois avant, 3 mois avant, etc.
Avec un DateTime et un DateInterval('P1M') :
J'obtiens la sortie suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php $now = new DateTime('2011-08-31'); echo '<h2>'.$now->format('Y-m-d').'</h2>'; for ($i=1;$i<=12;$i++) { $interval = new DateInterval('P1M'); $now->sub($interval); echo '<pre>';print_r($now->format('Y-m-d'));echo '</pre>'; }
Le 31 juin n'existant pas, il va me choisir le 1er juillet. J'aurai préféré qu'il choisisse le 30 juin, en gros le jours le plus proche existant dans le mois civil précédent...2011-08-31
2011-07-31
2011-07-01
2011-06-01
2011-05-01
2011-04-01
2011-03-01
2011-02-01
2011-01-01
2010-12-01
2010-11-01
2010-10-01
2010-09-01
Comment faire ça en PHP ?
Partager