obtenir une durée à partir de deux chaines de caracteres

momo27
Invité n'ayant pas de compte PHPfrance

24 mars 2012, 17:23

bonjour,
je dois faire la soustraction entre deux heurs récupérées à partir d'une base de données.
le problème que j'ai rencontré c'est que les heurs sont stockées dans la base de données comme étant des chaines de caractères
par exemple : 123:25:01 - 98:54:12 (hh:mm:ss).
j'ai besoin d'idées pour faire la différence et aussi la comparaison, je vous remercie d'avance.

ViPHP
xTG
ViPHP | 7331 Messages

24 mars 2012, 18:21

Quand un format n'est pas supporté (j'entends par là standard pour les fonctions) tu peux le décomposer (explode()) et créer un objet Datetime.
http://fr.php.net/manual/en/datetime.setdate.php
http://fr.php.net/manual/en/datetime.settime.php

Sinon tu peux essayer avec ceci directement :
http://fr.php.net/manual/en/datetime.cr ... format.php
Car il me semble que le format que tu utilises est valide.

Ou encore tu peux le faire à la main avec le résultat du explode, ce n'est que des calculs avec retenues.

Mammouth du PHP | 2278 Messages

25 mars 2012, 09:14

Si tu récupères deux dates depuis une table, c'est que tu as fait deux requêtes avec chacune une condition différente. On pourrait alors poser le problème ainsi:
Existe-t-il une requête SQL permettant d'obtenir le résultat souhaité en utilisant date_diff?
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD