conversion de minutes en heures...

conversion de minutes en heures... - PHP - Programmation

Marsh Posté le 10-12-2003 à 15:17:35    

Avez vous une idée comment je peux transformer des minutes (avec virgule) en format horaire ?
 
genre : 82.5min devient 1 H 20 mn 30 s ?
 
j'ai cherché des scripts tout fait... mais j'ai pas trouvé !
 
merci !
 
Freed

Reply

Marsh Posté le 10-12-2003 à 15:17:35   

Reply

Marsh Posté le 10-12-2003 à 15:23:15    

freed102 a écrit :

Avez vous une idée comment je peux transformer des minutes (avec virgule) en format horaire ?
 
genre : 82.5min devient 1 H 20 mn 30 s ?
 
j'ai cherché des scripts tout fait... mais j'ai pas trouvé !
 
merci !
 
Freed


En, 2 temps :
1. prendre la partie entière, la divisé par 60. Le nombre obtenu correspond au nombre d'heure, le reste au nombre de minute ( il faut bien faire un division entière )
2. prendre la partie décimale, la multiplier par 60 ( i.e. si tu as 65.5 multiplier 0.5 par 60 ). Le nombre obtenu est le nombre de seconde.
3. c'est pas bien compliqué, quand même.


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Marsh Posté le 10-12-2003 à 15:25:23    

j'ai trouvé un script entre temps ! :))
 

Code :
  1. function Chrono($TotSec) {
  2.     $heures  =  bcdiv($TotSec,  3600,  0);
  3.     $minutes  =  (bcdiv($TotSec,  60,  0)  %  60);
  4.     $secondes = $TotSec-(($heures * 3600) + ($minutes * 60));
  5.     return $heures  .  ":"  .  $minutes  .  ":"  .  $secondes;
  6. }


 
... j'ai juste à transformer mes minutes en secondes.. et la fonction fait le reste !!! kewl !!
 
thx !!!

Reply

Marsh Posté le 10-12-2003 à 15:27:58    

freed102 a écrit :

j'ai trouvé un script entre temps ! :))
 

Code :
  1. function Chrono($TotSec) {
  2.     $heures  =  bcdiv($TotSec,  3600,  0);
  3.     $minutes  =  (bcdiv($TotSec,  60,  0)  %  60);
  4.     $secondes = $TotSec-(($heures * 3600) + ($minutes * 60));
  5.     return $heures  .  ":"  .  $minutes  .  ":"  .  $secondes;
  6. }


 
... j'ai juste à transformer mes minutes en secondes.. et la fonction fait le reste !!! kewl !!
 
thx !!!


Moausi, mais 2 minutes de reflexion t'aurais amené au même résultat tout en te permettant de t'améliorer ...


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Marsh Posté le 10-12-2003 à 15:32:57    

oui c clair ! mais là je suis un peu dans le speed.. j'avais bien pensé à decomposer le chiffre etc etc.. Mais là c tout fait deja! :) thx !

Reply

Marsh Posté le 10-12-2003 à 16:07:35    

strftime( "%H H %M mn %S s", 82.5 * 60 ) => '02 H 22 mn 30 s'


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:14:42    

oui à propos... cette fonction ne met pas de 0 avant les heures et minutes et sec.. genre pour dire 02h22mm30s il me dit : 2h22h30s... là ça va encore.. mais quand c par exemple 2h2min30s ... c pas top ! lol
 
Ta technique Mara's dad... est elle plus correcte ?

Reply

Marsh Posté le 10-12-2003 à 16:16:40    

disons surtout qu'en plus d'être correcte, elle evite de ré-inventer la roue et tu peux la parametrer comme tu veux ( en te donnant la peine de lire la doc :o )

Reply

Marsh Posté le 10-12-2003 à 16:17:56    

freed102 > [:veryfree] un petit coup d'oeil dans la doc sur les formats de date et t'auras ta réponse ......(bordel :o)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-12-2003 à 16:17:56    

Regardes la doc de strftime() !
Tu verra que c'est pas le peine de réinventer la roue...
 
 :lol: Multi-grilled sur ce coup là [:grilled]


Message édité par Mara's dad le 10-12-2003 à 16:18:44

---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:17:56   

Reply

Marsh Posté le 10-12-2003 à 16:18:23    

Mara's dad a écrit :

Regardes la doc de strftime() !
Tu verra que c'est pas le peine de réinventer la roue...


grilled  [:veryfree]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-12-2003 à 16:18:58    

ta gueule :o


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:20:33    


on a posté la même seconde    [:newidk]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-12-2003 à 16:21:28    

j'aime bien les questions qui traînent partout sauf dans Algo. Peut-être on devrait mettre dans le sujet à lire la définition de "Algo"

Reply

Marsh Posté le 10-12-2003 à 16:22:00    

J'ai vu !
Mais grillés quand même par Anapajari :fou:


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:23:44    

Taz a écrit :

j'aime bien les questions qui traînent partout sauf dans Algo. Peut-être on devrait mettre dans le sujet à lire la définition de "Algo"


Français parler toi moi comprendre pas ...
Parler qoi de tu ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:24:30    

Mara's dad a écrit :

J'ai vu !
Mais grillés quand même par Anapajari :fou:


Et mais  :kaola: d'abord!

Reply

Marsh Posté le 10-12-2003 à 16:25:53    

Tires un peu plus la langue et je te la coupe :D


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:28:33    

alors moi j'ai comme bouquin "Pratique de MySQL et PHP" (de O'reilly).. et j'ai rien sur strftime !

Reply

Marsh Posté le 10-12-2003 à 16:29:14    

http://www.php.net


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:30:14    

Les bouquins de prog, c'est des trucs moizis avant même d'arriver chez le libraire :o


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 16:33:49    

c un truc qu'on m'a conseillé ! lol  
 
Cela dit.. j'ai un bug... je sais pas pourquoi mais ta formule magique n'a pas l'air de connaitre les heures inferieurs à "01" ! :o
 
en gros pour 3.333 minutes il m'indique 01 H 03 mn 20 s ... :??: !!
 
 

Reply

Marsh Posté le 10-12-2003 à 16:38:46    

et la marmotte ...
je serais curieux de voir ton code !

Reply

Marsh Posté le 10-12-2003 à 16:42:39    

$temps_copies_nb_formate=strftime( "%H H %M mn %S s", $temps_copies_nb_secondes);
$temps_copies_coul_formate=strftime( "%H H %M mn %S s", $temps_copies_coul_secondes);
$temps_reliures_formate=strftime( "%H H %M mn %S s", $temps_reliures_secondes);
$temps_enl_formate=strftime( "%H H %M mn %S s", $temps_enl_minutes_secondes);
$temps_livr_formate=strftime( "%H H %M mn %S s", $temps_livr_minutes_secondes);
$total_temps_formate=strftime( "%H H %M mn %S s", $total_secondes);


Message édité par freed102 le 10-12-2003 à 16:43:08
Reply

Marsh Posté le 10-12-2003 à 16:45:44    

Mara's dad a écrit :

Les bouquins de prog, c'est des trucs moizis avant même d'arriver chez le libraire :o


ui mais la réf donnée par fred102 est très bonne ...... essentiellement pour la methode dev qu'elle apporte  :wahoo:


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 10-12-2003 à 16:48:52    


on va la faire autrement, montre nous juste la ligne qui fait

Citation :


pour 3.333 minutes il m'indique 01 H 03 mn 20 s ... :??: !!  


Et si tu as des variables merci de nous dire ce qu'il y a dedans!


Message édité par anapajari le 10-12-2003 à 16:49:38
Reply

Marsh Posté le 10-12-2003 à 16:49:25    

pour essayer j'ai fait :
 
$temps_copies_nb_formate=strftime( "%H H %M mn %S s", 60);
 
et il me retourne:
 
01 H 01 mn 00 s  
 
Bizarre...

Reply

Marsh Posté le 10-12-2003 à 16:51:19    

par contre :
 
$temps_copies_nb_formate=strftime( "%H H %M mn %S s",4200);
 
me retourne : 02 H 10 mn 00 s  
 
... etrange !

Reply

Marsh Posté le 10-12-2003 à 16:57:03    

.. pourtant dans la doc je lis bien :
 
"%H - heure de la journée en numérique, et sur 24-heures (intervalle de 00 à 23)"

Reply

Marsh Posté le 10-12-2003 à 17:03:36    

Vous fachez pas !
 
strftime() renvoie une heure locale à partir d'un timetamp GMT.
 
La fonction date() aussi, mais cette dernière accèpte les timestamp négatif.
 
strftime( "%H %M %S", 0 ) => '01 00 00'
date( "H i s", 0 ) => '01 00 00'
date( "O" ) = > '+0100' // Décalage GMT
date( "H i s", 0 - 3600 ) => '00 00 00'
mais strftime( "%H %M %S", 0 -3600 ) => '' :/
 
Bref, il faut en fait utiliser les fonctions gmXXX
 
gmstrftime( "%H %M %S", 0 ) => '00 00 00'
gmdate( "H i s", 0 ) => '00 00 00'
 
:D


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 10-12-2003 à 17:07:20    

Mara's dad a écrit :

Vous fachez pas !
...


Mais je me fache pas!!! tiens par contre j'en ai un autre pour toi si tu veux ( http://forum.hardware.fr/forum2.ph [...] h=&subcat= )

Reply

Marsh Posté le 10-12-2003 à 17:09:32    

Ah oui !!! c beaucoup mieux !!! :D:D:D !!
 
Merci beaucoup en tous cas !! moi j'aurai pas trouvé ça tout seul !! je savais même pas que ça existait ce genre de fonctions !!! Je dormirai moins bete ce soir ! hihi !
 
là c bon ! :)
 
THX !

Reply

Marsh Posté le 10-12-2003 à 17:10:34    

Anapajari a écrit :


Mais je me fache pas!!! tiens par contre j'en ai un autre pour toi si tu veux ( http://forum.hardware.fr/forum2.ph [...] h=&subcat= )


Je l'ai vu celui-là :D
Heu, mais là on va dire que j'ai plus le temps :ange:


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed