Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> czas UNIX na d G:i:s, problem z odpowiednim przeformatowaniem daty UNIXowej
Sky_walker
post
Post #1





Grupa: Zarejestrowani
Postów: 214
Pomógł: 23
Dołączył: 26.09.2005

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


Mam czas zapisany w formacie UNIXowym eg. 252 i teraz chce go przekonwertować na postać: Dni Godziny:Minuty:Sekundy.
Kombinowałem, żeby zrobić to przy pomocy Date:
  1. <?php
  2. date('d G:i:s', $czas);
  3. ?>

Niestety, to nie to, gdyż on sobie konwertuje to na date od 19...któregośtam, więc w wyniku otrzymuję
01 1:04:12 (to wynik z $czas=252).
I nie wiem, jak zrobić, żeby wyświetlił to poprawnie (dla $czas=252; powinno to być 4:12)

I jeszcze drugie pytanie: Jak przekonwertować czas na postać Dni Godziny:Minuty:Sekundy ('d G:i:s') wraz z odpowiednim opisem, eg. 1 dzień 2 godz. 25:34 lub 1 godz. 42:13, zależnie od tego ile czasu jest w zmiennej $czas. Chodzi mi o taki myk, żeby wyświetlał odpowiedni opis tylko wtedy kiedy trzeba (24:14, a nie 0 dzień 0 godz. 24:14).


--------------------
Pomogłem? Kliknij poniżej.
Dzięki! :D
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
NuLL
post
Post #2





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


date" title="Zobacz w manualu php" target="_manual - Moze byc laskawie zajrzal na ta strone questionmark.gif

Ten post edytował NuLL 6.09.2006, 15:12:17


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
q
post
Post #3





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

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


tak powaznie to srednio wiem co to za format UNIX'a, ale nie zmienia to faktu ze 252 wg Ciebie powinno wygladac jak 4:12 , to nie jest to nic innego jak liczba minut, aby to uzyskac trzeba :

  1. <?php
  2. $czas = 252;
  3. echo (int)($czas/60) . ($czas%60);
  4. ?>


--------------------
www.iNdS.pl - Najwieksza Amatorska Sieć Komputerowa w Polsce
www.marcinpeciak.eu - under construction
Go to the top of the page
+Quote Post
Sky_walker
post
Post #4





Grupa: Zarejestrowani
Postów: 214
Pomógł: 23
Dołączył: 26.09.2005

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


lol... o tym nie pomyślałem... dzięki q biggrin.gif
choć pewnie 100% profesjonalizmu to to nie jest... ale ma działać ;P


--------------------
Pomogłem? Kliknij poniżej.
Dzięki! :D
Go to the top of the page
+Quote Post
NuLL
post
Post #5





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


OT: Na przyszlosc - czas unixa nazywany timestampem jest to liczba sekund ktora mija od epoki Unixa czyli 1 stycznia 1970 roku.


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
Coolmax
post
Post #6





Grupa: Zarejestrowani
Postów: 168
Pomógł: 0
Dołączył: 12.11.2005
Skąd: Bulowice nearby Wadowice (E), Oświęcim (W)

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


Cytat(q @ 6.09.2006, 16:13:08 ) *
tak powaznie to srednio wiem co to za format UNIX'a, ale nie zmienia to faktu ze 252 wg Ciebie powinno wygladac jak 4:12 , to nie jest to nic innego jak liczba minut, aby to uzyskac trzeba :

  1. <?php
  2. $czas = 252;
  3. echo (int)($czas/60) . ($czas%60);
  4. ?>

Przykład jest prosty, ale z moim nie mogę sobie poradzić. Jak na razie udało mi się wykombinować zwracanie ilości sekund od timestampa, dla podanej daty, np. 551740860 i teraz chciałbym zamienić to dokładnie na ilość lat, miesięcy, dni, godzin, minut, sekund. Napiszcie mi czy dobrze myśle:
  1. <?php
  2. $ts = 551740860;
  3. $min = (int)($ts/60);
  4. $sek = $ts%60;
  5. echo $min . " : " $sek;
  6. ?>

Teraz aby otrzymać godziny muszę to samo zrobić z $min, itd?
Cytat
Przy konwersji z liczb zmiennoprzecinkowych do całkowitych, liczba zostanie zaokrąglona w dół.

Jeżeli sposób, który podałem jest prawidłowy, to przez zaokrąglanie w dół, może trochę czasu "uciec"?

---
Jednak jest to trudniejsze :-(

Ten post edytował Coolmax 9.09.2006, 00:01:14


--------------------
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 Aktualny czas: 20.08.2025 - 18:24