Journal du Net > Développeurs > Contributions > Soumettez votre meilleure astuce PHP

APPEL
A CONTRIBUTION

Vous manipulez le langage PHP au quotidien pour concevoir votre site Web ? Vous avez certainement une astuce à partager !

Participez

 Fonction Ajout de jours à une date  

Cyril

Quel est en 3 lignes l'objectif de votre astuce ?

Fonctions qui permet d'ajouter à la date qui lui est passée en premier paramètre le nombre de jours passé en second paramètre.

Décrivez votre astuce en détail. N'hésitez-pas à inclure des portions de codes.

Cette fonction prend en paramètres la date de départ au format aaaa-mm-jj et le nombre de jours à ajouter, et renvoie la date calculée au format aaaa-mm-jj

Code de la fonction :

function GetdateD($DateA, $NbJ)
{
$Decoup=split("-", $DateA) ;
$A=$Decoup[0] ;
$M=$Decoup[1] ;
$J=$Decoup[2] ;
$DateF = mktime(0, 0, 0, $M, $J, $A) ;
$DateD = date("Y-m-d", strtotime(""... $NbJ... " day", $DateF)) ;
return $DateD ;
}


Exemple d'appel :

$DateA="2009-03-19" ;
$Duree="3" ;
$DateD=GetdateD($DateA, $Duree) ;
echo $DateD ;.


Publié le 20 mars 2009

Marc L
Plus simplement strtotime permet aussi l'ajout ou le retrait de jour ou même de mois.

$newdate1 = date("Y-m-d", strtotime("+3 day", strtotime(date()))) ;
$newdate2 = date("Y-m-d", strtotime("+1 month", strtotime(date()))) ;

ou même

$newdate2 = date("Y-m-d", strtotime("2009-05-06 +1 month")) ;


Il faut se méfier de l'ajout de mois car la fonction rajoute une unité au nombre de mois puis résout la date, si elle se révèle inexistante, à partir du nombre de jour de décalage.

$newdate = date( "Y-m-d", strtotime("+1 month", strtotime("2009-01-31") ) ) ;

print $newdate ; //donnera 2009-03-03
Cyril
Erratum: Dans la fonction la ligne: $DateD = date("Y-m-d", strtotime(""... $NbJ... " day", $DateF)) ; Est en fait: $DateD = date("Y-m-d", strtotime("". $NbJ. " day", $DateF)) ; Erratum
  Les dernières contributions  

  En ce moment sur Journal du Net Développeur  
16 contributions : 1 2 3 4 5 6 7 8 9 10 11 12 13 ... 16
 




 

RECHERCHE