Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] lub [PHP]Wyliczenie czasu
ZaXaZ
post
Post #1





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Czy istnieje jakaś funkcja która wyliczy mi czas taki jaki bym chciał (od 0)?
np podam parametr 'h' jako drugi 3600 (sec)
wyliczy ze to 1h. lub jak 'd' ile to dni itd itp.

ps. nie chce dzielic.

Ten post edytował ZaXaZ 31.07.2014, 10:53:25


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


PS. Nie masz wyjścia
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #3





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Pomoże ktoś naprawić kod? wyswietla mi 44l kiedy czas wynosi maksymalnie miesiac.

  1. function calculateDate($seconds)
  2. {
  3. $s = 's';
  4. if ($seconds>=60) //Minut
  5. {
  6. $seconds = $seconds/60;
  7. $s = 'm';
  8. }
  9. if ($seconds>=60) //Godzin
  10. {
  11. $seconds = $seconds/60;
  12. $s = 'g';
  13. }
  14. if ($seconds>=24) //Dni
  15. {
  16. $seconds = $seconds/24;
  17. $s = 'd';
  18. }
  19. if ($seconds>=31) //Miesiecy
  20. {
  21. $seconds = $seconds/31;
  22. $s = 'ms';
  23. }
  24. if ($seconds>=12) //Lat
  25. {
  26. $seconds = $seconds/12;
  27. $s = 'l';
  28. }
  29. return round($seconds).$s;
  30. }


--------------------
Go to the top of the page
+Quote Post
mmmmmmm
post
Post #4





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


Zje..ny kod na maksa... BPNMSP
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #5





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(mmmmmmm @ 31.07.2014, 12:47:16 ) *
Zje..ny kod na maksa... BPNMSP


dlatego pytalem sie o funkcje biggrin.gif.

pozniej pozamieniam na /= tylko niech pierw dziala tongue.gif

Ten post edytował ZaXaZ 31.07.2014, 12:01:23


--------------------
Go to the top of the page
+Quote Post
by_ikar
post
Post #6





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Pobaw się DateTime::diff, tam jest zwracany obiekt, który reprezentuje zarówno godziny, minuty, dni etc różnicy pomiędzy podanymi czasami (np now + czas podany przez ciebie).
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #7





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(by_ikar @ 31.07.2014, 14:15:55 ) *
Pobaw się DateTime::diff, tam jest zwracany obiekt, który reprezentuje zarówno godziny, minuty, dni etc różnicy pomiędzy podanymi czasami (np now + czas podany przez ciebie).


do tego wymagane są daty, a ja mam do dyspozycji tylko liczbe sekund.


--------------------
Go to the top of the page
+Quote Post
Pyton_000
post
Post #8





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


http://stackoverflow.com/questions/3172332...ourminutesecond
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #9





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


  1. $H = floor($seconds / 3600);
  2. $i = ($seconds / 60) % 60;
  3. $s = $seconds % 60;
  4. sprintf("%02d:%02d:%02d", $H, $i, $s);


umiał by ktoś dopisac $d $m $Y ?, jestem za słaby z matematyki, nawet z kalkulatorem.

Ten post edytował ZaXaZ 31.07.2014, 14:32:23


--------------------
Go to the top of the page
+Quote Post
Pyton_000
post
Post #10





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Napisz co Ty chcesz osiągnąć. Bo w tej chwili to co pokazałeś wyświetla peliczenie sekund na minuty, godziny (ale nie ile godzin i minut == ilość sekund)
Go to the top of the page
+Quote Post
ZaXaZ
post
Post #11





Grupa: Zarejestrowani
Postów: 285
Pomógł: 18
Dołączył: 30.01.2014
Skąd: <?=$_GET['city']?>

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


Cytat(Pyton_000 @ 31.07.2014, 17:00:09 ) *
Napisz co Ty chcesz osiągnąć. Bo w tej chwili to co pokazałeś wyświetla peliczenie sekund na minuty, godziny (ale nie ile godzin i minut == ilość sekund)


chcialbym zeby jeszcze przeliczylo dni, miesiace, lata.


--------------------
Go to the top of the page
+Quote Post
by_ikar
post
Post #12





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Cytat(ZaXaZ @ 31.07.2014, 14:53:45 ) *
do tego wymagane są daty, a ja mam do dyspozycji tylko liczbe sekund.


Nie, nie są, zobacz w jakim formacie http://php.net/manual/en/datetime.construct.php#example-2342 akceptuje przekazany mu czas. Przykład:

  1. <?php
  2.  
  3. $time = 946684800;
  4.  
  5.  
  6. $now = new DateTime;
  7. $ago = new DateTime('@'.$time);
  8.  
  9. $diff = $now->diff($ago);
  10.  
  11. var_dump($diff);


Otrzymasz w rezultacie obiekt DateInterval który będzie zawierać ilość lat, miesięcy, dni, godzin, minut i sekund.
Go to the top of the page
+Quote Post
trueblue
post
Post #13





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Tylko, że przekazujemy Unix timestamp, a mi się wydaje, że kolega Zaxaz chce obliczyć przedział czasu, a nie datę. Czyli np. dostać informację z liczby sekund, że ktoś jest na forum od 1 roku, 2 miesięcy, 3 dni, 4 godzin i 5 minut.

Ten post edytował trueblue 31.07.2014, 17:00:10


--------------------
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: 21.08.2025 - 23:04