Affichage du décompte d'une date par rapport avec la date actuelle

Soyez le premier à donner votre avis sur cette source.

Snippet vu 51 776 fois - Téléchargée 28 fois

Contenu du snippet

Tout est en le titre !
Pour ceux qui comprennent pas, ce script va vous afficher les mois,jours,minutes,secondes passés depuis la date actuelle !

Source / Exemple :


// Decoupez votre date de référence et mettez le dans les variables ci-dessous
// $s_annee
// $s_mois
// $s_jour
// $s_heure
// $s_minute
// $s_seconde
$seconde=date("U",mktime($s_heure,$s_minute,$s_seconde,$s_mois,$s_jour,$s_annee))-date("U",mktime(date("H"));
$seconde=str_replace("-","",$seconde);

if($seconde<60)
	$date_affichage=date("s",$seconde)." secondes";
elseif($seconde<3600)
	$date_affichage=date("i",$seconde)."min et ".date("i",$seconde)."s";
elseif($seconde<86400)
	$date_affichage=date("H",$seconde)."h, ".date("i",$seconde)."min et ".date("s",$seconde)."sec";
elseif($seconde<2678400)
	$date_affichage=date("d",$seconde)."j, ".date("H",$seconde)."h, ".date("i",$seconde)."min et ".date("s",$seconde)."sec";
else
	$date_affichage=date("m",$seconde)." mois, ".date("d",$seconde)."j, ".date("H",$seconde)."h, ".date("i",$seconde)."min et ".date("s",$seconde)."sec";

echo "<span style=\"font-size:12px;\">Il y a ".$date_affichage."</span><br>";

A voir également

Ajouter un commentaire

Commentaires

cs_yassinovic10
Messages postés
1
Date d'inscription
mercredi 23 août 2006
Statut
Membre
Dernière intervention
24 août 2006

ca marche plu
GREGPUNK
Messages postés
12
Date d'inscription
mercredi 9 avril 2003
Statut
Membre
Dernière intervention
6 mars 2006

Heuuu
pour ceux qui sont pas content, c'est vraiment un tout petit script qui permet de faire un décompte très simple
c'est sur que c'est pas au millième pret ( a la rigeur sur vos sites tout le monde s'en fou combien de secnde ca se fait)

vu que je l'utilise pour indiquer il y a combien de temps qu'un utilisateur a posté un commentaire pour chaque article !

ya pas besoin d'etre ultra précis !
sinon j'aurai utilisé des calcul de fou avec géolocalisation de la personne et avec décalage horaire en fonction de sa position et heures été et heures d'hivers ! ;-)
FhX
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
"désolé d'insister si je me trompe, mais le calcul de la différence des dates donne une "durée"."
Bah voui... mktime() renvoit bien un timestamp UNIX... Soit une durée depuis le 1er Janvier 1979 (ou 71... je sais plus.)


Après, tu utilises date() pour avoir la date actuelle par rapport à ta durée et puis voila.


Y'a rien de dur. :p
coucou747
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
30
et bien avec ça, tu prend des timestamp unix, tu les soustrait, tu as ta durée, et ensuite, tu le passe comme argument à date comme tu l'as fait... mais on le fait avec des timestamp unix...

Mon code est peu lisible car non commenté, mais bon, voilà quoi, c'est pas vraiment mon code, c'est une amélioration du tien (qui n'a en rapport avec le tien que la fonctionnalité, je l'admet... mais j'ai jamais eu envi de faire ça, alors je te montre comment le faire, mais pour les commentaires, tu te débrouille tout seul !)
bubuze
Messages postés
31
Date d'inscription
vendredi 18 février 2005
Statut
Membre
Dernière intervention
25 avril 2006

merci pour vos réponses, et bien joué coucou pour ton code ! (bien qu'il soit moins lisible que le premier)

désolé d'insister si je me trompe, mais le calcul de la différence des dates donne une "durée".
pour savoir le nombre de jour/mois/année contenus dans cette durée il faut avoir une référence :
une durée de 30 jours peut correspondre à plusieurs résultats, selon la date de référence sur laquelle on se base...
(en se méfiant également du sens de la soustraction)
ex : durée = 30 jours a plusieurs solutions ?
0mois30jours ou 1mois2jours ou 1mois1jour ou encore 1mois0jour.
comment il se dépatouille avec ça le php ?

ok je sors... la comparaison a lieu avec la date actuelle.
si je veux résoudre le problème que j'exposais, y-a-il une solution (à part modifier la date système ?)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.