Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/09/2008, 16h22   #1
Futur Membre du Club
 
Inscription : février 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 148
Points : 18
Points : 18
Par défaut [Dates] Différence entre deux heures

Bonjour,
je souhaite afficher la différence entre deux heures :

Code :
1
2
3
4
5
6
7
8
9
 
// On récupère le timestamp de l'execution de 18h
$prochaine=mktime(18);
 
// On soustrait le résultat obtenu à l'heure actuelle
$delais = time() - $prochaine;
 
// On affiche le tout formater
echo "Prochaine execution dans : ".date("format", $delais);
Cela m'affiche une valeur comme 23:00:00 fixe.

L'interêt du script est le suivant :

J'ai un script qui se réalise automatiquement toutes les 3h. (12h , 15h , 18h ...)
Ce code permet d'afficher le temps restant avant que le script ne s'effectue sous forme H:i:s

Merci
covin85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2008, 16h42   #2
Membre confirmé
 
Avatar de leodi
 
Homme Paul Bizouard
Directeur technique
Inscription : février 2004
Messages : 173
Détails du profil
Informations personnelles :
Nom : Homme Paul Bizouard
Âge : 22
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : Communication - Médias

Informations forums :
Inscription : février 2004
Messages : 173
Points : 202
Points : 202
Envoyer un message via MSN à leodi
Bonjour,

Pour la prochaine heure, je te conseille de faire
Code :
$prochaine = mktime(18, 0, 0);
En effet, sinon il remplira les minutes et les secondes par celle de la date courante. (donc au lieur d'avoir 2h30 tu aurais eut juste 2h.)

Citation:
http://fr3.php.net/manual/fr/function.mktime.php
Les arguments peuvent être omis, de droite à gauche, et tous les arguments manquants sont utilisés avec la valeur courante de l'heure et du jour.

De plus, le time sera négatif. En effet tu soustrais le timestamp courant a un timestamp future (donc plus grand).

Il faut donc faire -$delais :

Code :
echo "Prochaine execution dans : ".date("h i s", -$delais);
Reste a faire la gestion des heures (s'il est 19h ce script ne fonctionnera pas, il faudra faire day + 1).

Bonne chance,
Paul
leodi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2008, 19h47   #3
Futur Membre du Club
 
Inscription : février 2004
Messages : 148
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 148
Points : 18
Points : 18
Merci beaucoup cela fonctionne
covin85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h24.


 
 
 
 
Partenaires

Hébergement Web