IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Dates] Calcul d'heure


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 18
    Par défaut [Dates] Calcul d'heure
    Bonjour,

    J'ai deux variables $credit et $debit contenant des temps sous la forme hh:mn. Comment avec PHP soustraire ces deux valeurs horaires? Et si $debit est supérieur à $credit alors il me faudrait une valeur négative. Du genre -hh:mn.

    Un coup de main serait vraiment sympa.

    A+

  2. #2
    Membre expérimenté
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Par défaut
    un truc dans ce genre ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <?php
    $heure_1 = "12:30";
    $heure_2 = "12:10";
     
    echo "heure 1 : ".$heure_1."<br>";
    echo "heure 2 : ".$heure_2."<br>";
     
    $tabl_1 = explode(":", $heure_1);
    $tabl_2 = explode(":", $heure_2);
     
    $calcul_heure = $tabl_1[0]-$tabl_2[0];
     
    $calcul_minutes = $tabl_1[1]-$tabl_2[1];
    if ($calcul_minutes < 0) {
    	if ($calcul_heure < 0) {
    		$calcul_minutes = abs($calcul_minutes);
    	} else {
    		if ($calcul_heure == 0) {
    			$calcul_minutes = abs($calcul_minutes);
    			$calcul_heure = "-0";
    		} else {
    			$calcul_minutes = 60+$calcul_minutes;
    			$calcul_heure = $calcul_heure-1;
    		}
    	}
    }
     
     
    $difference = $calcul_heure.":".$calcul_minutes;
     
    echo "différence entre heure 2 et heure 1 : ".$difference;
    ?>
    Hop là, édité, ca te sort la différence correcte dans tout les cas maintenant pis j'ai viré ce qui ne servait plus à rien, mais je sais pas pourquoi, mon petit doigt me dit qu'il doit déjà y avoir des fonctions existantes pour ca :p
    Globalement inoffensif
    Merci de respecter les règles du forum.
    Aucune question technique par MP !
    _______________________________________________________________________
    Cours Ruby et Ruby on Rails (RoR) - Cours PHP - FAQ Ruby / Rails - Livres Ruby / Rails
    Ajax facile avec Ruby on Rails, Prototype, script.aculo.us et les RJS
    Tutoriaux HTML/CSS et PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 18
    Par défaut
    Ok, merci, je vais tester ton code.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] calcul d'heure entre deux date et heure
    Par fullmetalknet dans le forum Excel
    Réponses: 8
    Dernier message: 06/11/2009, 11h49
  2. Réponses: 2
    Dernier message: 05/02/2009, 17h05
  3. calculer nombre heure entre 2 dates
    Par liquid dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 20/03/2007, 19h48
  4. [Dates] Calcules avec heures
    Par Pahcixam dans le forum Langage
    Réponses: 17
    Dernier message: 21/08/2006, 21h50
  5. [Dates] Calcul d'une différence entre deux heures
    Par loreleï85 dans le forum Langage
    Réponses: 12
    Dernier message: 28/06/2006, 11h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo