[PHP] comparer 2 dates
Fermé
bazzouz
Messages postés
363
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
20 juillet 2011
-
26 août 2010 à 10:23
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 - 26 août 2010 à 13:17
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 - 26 août 2010 à 13:17
A voir également:
- [PHP] comparer 2 dates
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
- France 2 uhd - Accueil - TV & Vidéo
- Whatsapp avec 2 cartes sim - Guide
- Le royaume de ga'hoole 2 date de sortie - Forum Cinéma / Télé
5 réponses
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
26 août 2010 à 11:16
26 août 2010 à 11:16
Bonjour,
Puisque tu as 2 timestamp, c'est facile.
Si tu fais la différence des 2 dates, tu auras le temps en secondes entre ces 2 dates.
Ensuite tu calcul combien de secondes il y a dans 12h.
Puisque tu as 2 timestamp, c'est facile.
Si tu fais la différence des 2 dates, tu auras le temps en secondes entre ces 2 dates.
Ensuite tu calcul combien de secondes il y a dans 12h.
Leviathan49
Messages postés
257
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
22 juillet 2011
70
Modifié par Leviathan49 le 26/08/2010 à 12:08
Modifié par Leviathan49 le 26/08/2010 à 12:08
Si la date est dans un format du genre "15/10/2010 12:56:22"
Tu dois :
- récupérer chaque champ de ta date, avec une expression regulière par ex:
- tu retrouve le timestamp avec mktime (https://www.php.net/manual/fr/function.mktime.php ex:
Tu dois :
- récupérer chaque champ de ta date, avec une expression regulière par ex:
preg_match("#([0-9]{1,2})/([0-9]{1,2})/([0-9]{4}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})#",$str,$matches);ou des explode bien placés (http://php.net/manual/fr/function.explode.php)
- tu retrouve le timestamp avec mktime (https://www.php.net/manual/fr/function.mktime.php ex:
mktime($matches[4],$matches[5],$matches[6],$matches[2],$matches[1],$matches[3]);Attention au format demandé par mktime(heure,min,sec,mois,jour,année)
bazzouz
Messages postés
363
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
20 juillet 2011
81
26 août 2010 à 11:21
26 août 2010 à 11:21
Ok, mais, la 2 ème date est chargé depuis un fichier texte donc sera de type chaine de caractère et pas timestamp, comment faire la convertion ?
Merci
Merci
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
26 août 2010 à 12:14
26 août 2010 à 12:14
fait ceci :
$time = (int) $timestamp
mais je pense pas que ça change quelque chose.
si tu fais directement la différence, php comprendra que ce sont 2 nombres.
$time = (int) $timestamp
mais je pense pas que ça change quelque chose.
si tu fais directement la différence, php comprendra que ce sont 2 nombres.
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
200
26 août 2010 à 12:01
26 août 2010 à 12:01
La fonction mktime : https://www.php.net/manual/fr/function.mktime.php
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bazzouz
Messages postés
363
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
20 juillet 2011
81
26 août 2010 à 12:11
26 août 2010 à 12:11
Merci à vous, je vais essayer cette méthode cet aprés midi ;)
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
26 août 2010 à 12:16
26 août 2010 à 12:16
mais tu as dis que ta date enregistré étant du même format que time() donc format unix.
exemple : 12546879 et pas une date comme "15/10/2010 12:56:22"
Exacte ?
exemple : 12546879 et pas une date comme "15/10/2010 12:56:22"
Exacte ?
bazzouz
Messages postés
363
Date d'inscription
vendredi 24 octobre 2008
Statut
Membre
Dernière intervention
20 juillet 2011
81
Modifié par bazzouz le 26/08/2010 à 12:19
Modifié par bazzouz le 26/08/2010 à 12:19
Oui exacte, je l'ai stocké sous format UNIX pour faciliter la comparaison ;)
Leviathan49
Messages postés
257
Date d'inscription
jeudi 10 juin 2010
Statut
Membre
Dernière intervention
22 juillet 2011
70
26 août 2010 à 12:34
26 août 2010 à 12:34
Ah dans ce cas aucun problème de conversion tu as juste à comparer ta chaine dans le fichier et ton timestamp.
(Ça m'apprendra à lire que les messages en diagonale)
(Ça m'apprendra à lire que les messages en diagonale)
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
26 août 2010 à 13:17
26 août 2010 à 13:17
oui effectivement. donc une simple différence des 2 dates suffit.