Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> operacje na dwóch czasach
cellulit
post 4.06.2006, 23:15:24
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 4.06.2006

Ostrzeżenie: (0%)
-----


czesc.

mama maly problem dotyczacy parsowania i operacji na 2 czasach.
zalozmy, ze mamy 2 wartosci (obie String, w formacie minuty:sekundy:msec):

czas A: 03:37:10
czas B: 11:38:50

jak moge wykonac operacje B - A i otrzymac wynik 08:01:40 ?

dzieki

Ten post edytował cellulit 4.06.2006, 23:16:05


--------------------
.cell
Go to the top of the page
+Quote Post
q
post 4.06.2006, 23:48:46
Post #2





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 4.04.2003
Skąd: Częstochowa/Wrocław

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $sTimeA = '03:37:10';
  3. $sTimeB = '11:38:50';
  4.  
  5. $aTimeA = explode(':', $sTimeA);
  6. $aTimeB = explode(':', $sTimeB);
  7.  
  8. $iTimeDif = mktime($aTimeB[0], $aTimeB[1], $aTimeB[2], date("n"), date("j"), date("Y"), 1) - mktime($aTimeA[0], $aTimeA[1], $aTimeA[2], date("n"), date("j"), date("Y"), 1);
  9.  
  10. echo gmstrftime("%H:%M:%S", $iTimeDif);
  11. ?>


przy zamianie ostatniej linii na date" title="Zobacz w manualu php" target="_manual wynik jest o godzine wiekszy smile.gif


--------------------
www.iNdS.pl - Najwieksza Amatorska Sieć Komputerowa w Polsce
www.marcinpeciak.eu - under construction
Go to the top of the page
+Quote Post
erix
post 5.06.2006, 13:13:46
Post #3





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
  1. <?php
  2. explode(':', $sTimeA);
  3. ?>

a nie lepiej by bylo z strtotime" title="Zobacz w manualu php" target="_manual?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
q
post 5.06.2006, 14:49:21
Post #4





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 4.04.2003
Skąd: Częstochowa/Wrocław

Ostrzeżenie: (0%)
-----


faktycznie z strtotime" title="Zobacz w manualu php" target="_manual latwiej to wygląda smile.gif

  1. <?php
  2. $sTimeA = '03:37:10';
  3. $sTimeB = '11:38:50';
  4.  
  5. echo gmstrftime("%H:%M:%S", strtotime($sTimeB) - strtotime($sTimeA));
  6. ?>


--------------------
www.iNdS.pl - Najwieksza Amatorska Sieć Komputerowa w Polsce
www.marcinpeciak.eu - under construction
Go to the top of the page
+Quote Post
cellulit
post 5.06.2006, 18:00:17
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 4.06.2006

Ostrzeżenie: (0%)
-----


az tak to proste?
dzieki!

i gra gitara... guitar.gif


--------------------
.cell
Go to the top of the page
+Quote Post
cellulit
post 5.06.2006, 20:20:35
Post #6





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 4.06.2006

Ostrzeżenie: (0%)
-----


no dobra... trochę jednak trzeba było pokombinowac. poniewaz daty nie sa w formacie H:M:S, tylko M:S:MS (jak wspomniałem wyżej) sposob na zabawe z czasami wykłada się jeśli przekraczamy 24h, czyli nasz czas to np. 30:04:30.

spokojnie można to rozwiązać poprzez:
  • wyciecie milisekundy (można bez nich żyć)
  • dolozenie 00: na poczatek
  • i wtedy parsowanie "strtotime"

ale oczywiscie dzieki za podpowiedzi biggrin.gif


--------------------
.cell
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.06.2025 - 14:48