comparaison de date en php

WRInaute occasionnel
slt
je cherche a faire une comparaison de date
-> jenregistre UNE date dans la base de donne
et je compare avec la date du jour pour savoir combien il reste de temsp avand la date mis en place
merci de maider svp pour la comparaison

en php of course ;)
 
WRInaute accro
$time=time();

Tu as l'heure actuelle exprimée en seconde à partir du 1er jan 1970 (je crois) se qui fait un chiffre du genre 1090554254 (en gros ^^).

Ensuite si ta date dans ta base de donnée est dans le même format tu fais une différence entre les deux dates. Et tu aura un chiffre qui correspondra à la différence en seconde entre les deux dates.
 
WRInaute accro
JeunZ a dit:
$time=time();

Tu as l'heure actuelle exprimée en seconde à partir du 1er jan 1970 (je crois) se qui fait un chiffre du genre 1090554254 (en gros ^^).


je confirme

suite à une migration phpnuke -> phpbb les anciens inscrit de notre forum sont inscrits avec comme date 1 er janvier 1970

il faudra que je corrige cela d'ailleur...
 
WRInaute accro
Une fois que tu as un écart en secondes entre deux dates tu ne sais pas convertir en année, mois, jours etc?

Petit aide:

1 minute = 60 sec
1h = 3600 sec
1 jour = 86400 sec (il me semble de tete)

etc...

Suffit de faire des petits divisions successives avec les foncitons (mod et div)

Bon ça c'est la méthode barbare et pour apprendre à coder, en php il doit y avoir un truc du genre: date(...) avec des arguments mais j'utilise jamais ce genre de fonctions :-(.
 
WRInaute impliqué
hum, regarde les commentaires des users...

http://fr2.php.net/manual/fr/function.time.php

function seconds_to_time ($seconds) {
$retArr['years'] = floor ($seconds / 31536000);
if ($retArr['years'] > 1) $seconds -= $retArr['years'] * 31536000;

$retArr['days'] = floor ($seconds / 86400);
if ($retArr['days'] > 1) $seconds -= $retArr['days'] * 86400;

$retArr['hours'] = floor ($seconds / 3600);
if ($retArr['hours'] > 1) $seconds -= $retArr['hours'] * 3600;

$retArr['minutes'] = floor ($seconds / 60);
if ($retArr['minutes'] > 1) $seconds -= $retArr['minutes'] * 60;

$retArr['seconds'] = $seconds;

return $retArr;
}
 
Discussions similaires
Haut