Comment comparerb deux heures (php)
kiki72
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
snppf -
snppf -
Bonjour,
je voudrais savoir comment fait ton pour comparer deux heures
ex:
il commence a 10:30 puis fini a 11:30 la durer est de 1h mais comment le faire faire avec php??
j'ai 2 tables mysql une heure de début: heured et une heures de fin: heuref.
et dans un tableau d'affichage g une case durée mais je c pa trop comment faire??? je croit qu'il fo un mktime ou quelque chose comme sa!!!
je demande votre aide svp, merci d'avance!!
je voudrais savoir comment fait ton pour comparer deux heures
ex:
il commence a 10:30 puis fini a 11:30 la durer est de 1h mais comment le faire faire avec php??
j'ai 2 tables mysql une heure de début: heured et une heures de fin: heuref.
et dans un tableau d'affichage g une case durée mais je c pa trop comment faire??? je croit qu'il fo un mktime ou quelque chose comme sa!!!
je demande votre aide svp, merci d'avance!!
A voir également:
- Comment comparerb deux heures (php)
- Comment faire deux colonnes sur word - Guide
- Deux ecran pc - Guide
- Nombre de jours entre deux dates excel - Guide
- Deux whatsapp sur un téléphone - Guide
- Comment fusionner deux cellules sur excel - Guide
4 réponses
Tout dépend de comment sont stockées tes dates.. est-ce des champs datetime, varchar, timestamp... ?
Sinon tu peux carrement le faire en SQL (dans ta requète) avec les fonctions de date :
http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-functions.html
=> voir "datediff()"
Sinon tu peux carrement le faire en SQL (dans ta requète) avec les fonctions de date :
http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-functions.html
=> voir "datediff()"
oui, utilise simplement un datediff()
ex: select heured, heuref, datediff(heuref, heured) from ...
NB : datediff ne te remonte qu'une différence en jours ! donc pas forcement génial.
Si tu veux le faire en php regardes du coté de la fonction "strftime" https://www.php.net/strftime
ex: select heured, heuref, datediff(heuref, heured) from ...
NB : datediff ne te remonte qu'une différence en jours ! donc pas forcement génial.
Si tu veux le faire en php regardes du coté de la fonction "strftime" https://www.php.net/strftime
sinon fais :
select UNIX_TIMESTAMP(heured), UNIX_TIMESTAMP(heuref) from ...
et ensuite tu travaille avec des timestamp en utilisant la fonction date() de php pour les formater comme tu veux.
La différence entre les deux sera donc la soustraction des deux dates (en nombre de secondes)
select UNIX_TIMESTAMP(heured), UNIX_TIMESTAMP(heuref) from ...
et ensuite tu travaille avec des timestamp en utilisant la fonction date() de php pour les formater comme tu veux.
La différence entre les deux sera donc la soustraction des deux dates (en nombre de secondes)
voici une fonctio qui marche bien pour faure la difference entre deux heures
/fonction addition heure difheure(debut , fin )
function difheure($heuredeb,$heurefin)
{
$hd=explode(":",$heuredeb);
$hf=explode(":",$heurefin);
$hd[0]=(int)($hd[0]);$hd[1]=(int)($hd[1]);$hd[2]=(int)($hd[2]);
$hf[0]=(int)($hf[0]);$hf[1]=(int)($hf[1]);$hf[2]=(int)($hf[2]);
if($hf[2]<$hd[2]){$hf[1]=$hf[1]-1;$hf[2]=$hf[2]+60;}
if($hf[1]<$hd[1]){$hf[0]=$hf[0]-1;$hf[1]=$hf[1]+60;}
if($hf[0]<$hd[0]){$hf[0]=$hf[0]+24;}
return (($hf[0]-$hd[0]).":".($hf[1]-$hd[1]).":".($hf[2]-$hd[2]));
}
// fin de fonction
?>
/fonction addition heure difheure(debut , fin )
function difheure($heuredeb,$heurefin)
{
$hd=explode(":",$heuredeb);
$hf=explode(":",$heurefin);
$hd[0]=(int)($hd[0]);$hd[1]=(int)($hd[1]);$hd[2]=(int)($hd[2]);
$hf[0]=(int)($hf[0]);$hf[1]=(int)($hf[1]);$hf[2]=(int)($hf[2]);
if($hf[2]<$hd[2]){$hf[1]=$hf[1]-1;$hf[2]=$hf[2]+60;}
if($hf[1]<$hd[1]){$hf[0]=$hf[0]-1;$hf[1]=$hf[1]+60;}
if($hf[0]<$hd[0]){$hf[0]=$hf[0]+24;}
return (($hf[0]-$hd[0]).":".($hf[1]-$hd[1]).":".($hf[2]-$hd[2]));
}
// fin de fonction
?>
et je voudrais pouvoir calculer la durée entre les deux pour l'afficher dans un tableau!! vous voyers a peut pret le truc?