![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 79 Pomógł: 3 Dołączył: 16.01.2009 Skąd: lubelskie Ostrzeżenie: (10%) ![]() ![]() |
witam
otóż mam taki skrypt ktoremu najpierw daje przyszłą datę, date aktualna sam sobie bierze , na koncu zwraca roznice ale w dziwnej skladni...jak to zamienic na normalny czas aby pokazywal dni godziny sekundy? oto moj skrypt:: $przyszla= 1267650294; $date= mktime("Y-m-d H:i:s"); $dobra=$przyszla-$date; echo $dobra; |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Zwraca liczbę sekund zapewne...
-------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 79 Pomógł: 3 Dołączył: 16.01.2009 Skąd: lubelskie Ostrzeżenie: (10%) ![]() ![]() |
ok wszystko dziala wielkie dzieki:)
CODE $przyszla= 1267650294; $date= mktime("Y-m-d H:i:s"); $dobra=$przyszla-$date; if(isset($dobra)) { if($dobra/89400 >= 1) { echo intval($dobra/86400)." dni"; } else if($dobra/3600 >= 1) { echo intval($dobra/3600)." godz."; } else if($dobra/60 >= 1) { echo intval($dobra/60)." min."; } else if($dobra >= 1 AND $dobra < 60) { echo "poniżej minuty"; } else if($dobra <= 0); a to mi jeszcze wpadlo do glowy przez kolegę i proszę pomózcie mi to udoskonalic.... Ten post edytował micha12344 5.02.2010, 22:29:27 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 1 Dołączył: 6.02.2010 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze, uporządkuj składnię. Klamry nie potrzebują po wolnej linii nad sobą i pod sobą, od tego są tabulatory. Niech zgadnę, piszesz w Notepadzie?
Po drugie, mktime() nie działa w ten sposób. Od tego jest funkcja strtotime(). Składnia mktime() poniżej w moim kawałku kodu. Po trzecie, nie ma sensu ciągle dzielić sekund, skoro mamy funkcję date(). Co prawda z zwraca dzień w roku od 0 do 365, czyli nie będzie działało gdy dni jest więcej niż 365, ale przypuszczam że aż tyle nie będzie potrzebne. W ostateczności można wtedy zrobić floor($dobra / 86400). A oto mój kod:
Zdaję sobie sprawę, że trzykrotnie zagnieżdżony if nie jest najpiękniejszym kodem na świecie, ale działa jak trzeba. Ten post edytował Virus_PL 6.02.2010, 10:42:29 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
a to mi jeszcze wpadlo do glowy przez kolegę i proszę pomózcie mi to udoskonalic.... Wystarczy, że w moim kodzie przed:
Dasz:
-------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 79 Pomógł: 3 Dołączył: 16.01.2009 Skąd: lubelskie Ostrzeżenie: (10%) ![]() ![]() |
dzieki wszystkim oba przyklady są bardzo dobre.
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.06.2025 - 17:30 |