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] Jours, heures et minutes entre deux timestamp ?


Sujet :

Langage PHP

  1. #1
    Membre averti
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Octobre 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Paramétreur de progiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 970
    Points : 381
    Points
    381
    Par défaut [Dates] Jours, heures et minutes entre deux timestamp ?
    Bonjour,

    Je souhaiterai afficher le nombre de jours, heures et minutes entre deux timestamp.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    	function DateDiff($timestamp)
    	{
    		$difference = time()-$timestamp;
    		$jour = floor($difference/86400);
    		$heure = floor($difference/3600);
    		$minute = floor($difference/60);
    		return $jour.' jour(s), '.$heure.' heure(s) et '.$minute.' minute(s)';
    	}
    Le problème que je rencontre, c'est que les heures ne prennent pas en compte le nombre de jours déjà calculés.
    C'est pareil pour les minutes, je me retrouve avec un nombre énorme au lieu d'avoir un nombre de minutes comprises entre 0 et 59.

    J'espère que l'explication de mon problème a été assez claire.

    Merci pour vos précisions,
    ZiP

  2. #2
    Membre averti Avatar de ShinJava
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    413
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 413
    Points : 357
    Points
    357
    Par défaut
    Hello [ZiP],
    C'est normal que tu te retrouves avec un gros chiffre à la fin (qui normalement est le bon en plus, sauf qu'il nest pas tres conventionnel), car tu fais toutes tes divisions sur la même base (la variable difference).

    L'idéal, c'est que tu récupères à chaque fois le reste de ta division courante pour ensuite la calculer dans l'unité suivante. Si tu voit ce que je veux dire?

    Voici un code un peu barbare qui te permettra de comprendre un peu la manip à faire.
    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
     
    	function DateDiff($timestamp)
    	{
    		$difference = time()-$timestamp;
     
    		$jour = floor($difference/86400);
     
     
    		// le % signifie modulo qui permet de récuperer le reste d'une division
    		$reste = ($difference%86400);
     
    		$heure = floor($reste/3600);
    		$reste = ($difference%3600);
     
    		$minute = floor($reste/60);
    		return $jour.' jour(s), '.$heure.' heure(s) et '.$minute.' minute(s)';
    	}
    Voilà un peu l'idée, j'espere que t'arrivera à la saisir.
    Il faudra que tu test de ton côté si tout se passe bien et essayer de rendre ce code un peu plus propre.

    Voila voila,
    Bon courage.
    ShinJava

  3. #3
    Membre averti
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Octobre 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Paramétreur de progiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 970
    Points : 381
    Points
    381
    Par défaut
    Bonjour,

    J'ai compris mon problème !

    Votre code marche à merveille !

    Merci,
    ZiP

  4. #4
    Membre averti Avatar de ShinJava
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    413
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 413
    Points : 357
    Points
    357
    Par défaut
    Bonjour,
    C'est cool si tu as saisi la problematique

    N'oublie pas de mettre cette discussion en résolu.

    Bon courage pour la suite,

    ++
    ShinJava

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

Discussions similaires

  1. Nombre d'heures et de minutes entre deux dates
    Par Bes74 dans le forum VBA Access
    Réponses: 1
    Dernier message: 20/03/2014, 19h34
  2. Réponses: 1
    Dernier message: 09/03/2014, 21h46
  3. Nombre de minutes entre deux TIMESTAMP (indépendante)
    Par Alain Defrance dans le forum Contribuez
    Réponses: 0
    Dernier message: 09/02/2011, 22h34
  4. Réponses: 0
    Dernier message: 09/02/2011, 22h33
  5. Calculer le nombre de jours, d'heures et de minutes entre deux timestamp.
    Par xess91 dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 0
    Dernier message: 25/05/2010, 16h34

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