php : calcul d'une durée

  • Auteur de la discussion Auteur de la discussion 2fou
  • Date de début Date de début
WRInaute discret
Bonjour,
je souhaiterai calculer la durée en secondes entre la date du jour au format YYYY-mm-jj heure:min:secondes et une date de ma base de données au même format.

Savez-vous comment-faire?

Merci.
 
WRInaute discret
Salut,

Tu peux essayer un truc de ce style :


Code:
$date_bdd = date("U", mktime(0, 0, 0, 27, 7, 2005)); //pour hier dans ta base de données
$date_jour = date("U", mktime(0, 0, 0, 28, 7, 2005)); //pour date aujourd'hui

$nb_sec_de_difference = $date_jour - $date_bdd;

Bon bien sûr il faut que tu adaptes tes dates pour qu'elles rentrent dans le mktime() (qui est une fonction qui te permet de calculer une date ancienne ou future (ancienne dans ton cas).

Tiens moi au courant.

A+

Doug

[edit : si tu souhaites plus de précisions, n'hésite pas, mais j'ai la flegme d'expliquer en détail, je le ferai si quelqu'un en a besoin et veut savoir de quoi il en retourne]
 
WRInaute discret
j'capte pas :oops:
Qu'entend tu par "faut que tu adaptes tes dates pour qu'elles rentrent dans le mktime() " ???
j'ai ça :

// date de dernière activité inscrite dans ma bdd
$date_modif = $data['date_modif'];

// date du jour
$maintenant = date("Y-m-j G:i:s");

// durée d'inactivité
$inactivite = $maintenant - $date_modif;
echo $inactivité

Mais ça marche po...ça serait trop simple !


edit : désolé pour ta flemme ;-) mais je crois que j'ai besoin d'explications
 
WRInaute discret
ok, c'est bon, ça fonctionne ! merci

Code:
// date dernière activité
$date_modif = $data['date_modif'];
$annee_modif = substr("$date_modif",0,4);
$mois_modif = substr("$date_modif",5,2);
$jour_modif = substr("$date_modif",8,2);
$heure_modif = substr("$date_modif",11,2);
$minute_modif = substr("$date_modif",14,2);
$seconde_modif = substr("$date_modif",17,2);


// date actuelle
$maintenant = date("Y-m-j G:i:s"); 
$annee_actuelle = date("Y"); 
$mois_actuelle = date("m"); 
$jour_actuelle = date("j"); 
$heure_actuelle = date("G"); 
$minute_actuelle = date("i"); 
$seconde_actuelle = date("s");

$date_modif = date("U", mktime($heure_modif, $minute_modif, $seconde_modif, $jour_modif, $mois_modif, $annee_modif));  
$maintenant = date("U", mktime($heure_actuelle, $minute_actuelle, $seconde_actuelle, $jour_actuelle, $mois_actuelle, $annee_actuelle)); //pour date aujourd'hui 

$inactivite = ($maintenant-$date_modif);
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut