picture picture
juillet 17, 2006 PHP 2 Commentaires

Afficher, avec PHP, une date passée ou future, avec un intervalle imposé

exemple : afficher la date « il y a 3 mois »…

… pas si évident qu’il n’y parait, si l’on tient compte des problèmes :o des sauts d’années, des bisextiles, etc…

 

En fait c’est tres simple, il suffit d’utiliser la fonction mktime() combinée avec la fonction date().

La première retourne le nombre de secondes ecoulées entre une date repère fixe standard (le 1er janvier 1970) à partir d’un jour, d’un mois et d’une années données, et la seconde permet de manipuler les mois, jours et années en y ajoutant ou retranchant des valeurs numériques par exemple.

Le code :

 // aujourd'hui:    $datactu = date("d-m-Y"); 

// il y a 8 mois : $datarchiv = date ("d-m-Y", mktime (0,0,0,date('m')-8,date('d'),date('Y')));

echo 'Aujourd'hui : ',$datactu,' / Il y a 8 mois : ', $datarchiv; // affichera par exemple : Aujourd'hui : 17-07-2006 / Il y a 8 mois : 17-11-2005

 

Reste à formater ces dates, avec la fonction explode() par exemple.

Sur le même principe, on peut bien entendu extrapoler et calculer des dates à venir :)

2 Responses to “Afficher, avec PHP, une date passée ou future, avec un intervalle imposé”

2 Commentaires

  1. webtolosa dit :

    Quand tu extrais tes champs tu utilises la commande ORDER BY (http://sql.sh/cours/order-by)

  2. casimir dit :

    bjr, svp j’aimerai afficher les elts de ma base de données par jour et je ne sais pas cmt faire

Commentaire

Name

Mail (ne sera pas publié)

Website

Laisser ces deux champs tels quels :
:D :-) :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: