Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Odliczanie od daty
gumer
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 23.04.2003
Skąd: Białystok

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


Witam. Znalazłem taki kod, ...

Kod
<?

$urodziny = mktime(date("H"), date("i"),
date("s"), date("m"), date("d"),
date("Y")) - mktime(0,0,0,11,04,2006);

print "Mam już <b>".floor($urodziny/(60*60*24))."</b> dni.";

?>


... który zlicza dni od podanej daty. Jak go przerobić, aby pokazywał nie tylko dni, ale i miesiące i lata?


--------------------
"Po to gromadzimy, abyśmy mieli co rozdawać" Stefan kard. Wyszyński (1901 - 1981)
Go to the top of the page
+Quote Post
ispep
post
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 29.02.2008

Ostrzeżenie: (10%)
X----


dolaczam sie do prosby winksmiley.jpg
Go to the top of the page
+Quote Post
-Wieviór-
post
Post #3





Goście







  1. <?
  2.  
  3. $urodziny = mktime(date("H"), date("i"),
  4. date("s"), date("m"), date("d"),
  5. date("Y")) - mktime(0,0,0,30,05,1989);
  6.  
  7. $lat = round($urodziny/(60*60*24*365));
  8. $miesiecy = round($urodziny/(60*60*24*12));
  9.  
  10. echo 'Mam już <b>'.$lat.'</b> lat, to jest <b>'.$miesiecy.'</b> miesięcy';
  11.  
  12. ?>


Przy czym nie jestem pewien poprawności tego kodu, zaraz podam lepszą wersję, bo ta szwankuje ;]


Lepsza wersja:

  1. <?
  2.  
  3. $datateraz = date('Y-m-d H:i:s');
  4.  
  5. $urodziny = (strtotime($datateraz)- strtotime('1989-05-30 00:00:00'));
  6.  
  7. $lat = floor($urodziny/(60*60*24*365));
  8. $miesiecy = floor($urodziny/(60*60*24*12)); // itd., itp.
  9.  
  10. echo 'Mam już <b>'.$lat.'</b> lat, to jest <b>'.$miesiecy.'</b> miesięcy';
  11.  
  12. ?>
Go to the top of the page
+Quote Post
-Gość-
post
Post #4





Goście







a jak zrobic w zwyklym odliczaniu do daty aby jak skonczy odliczac nie liczyl dalej i pokazywal pozostalo dni -1 godzin -1 sekund -1 tylko pokazal same zera i tekst zakonczono
Go to the top of the page
+Quote Post
-Wieviór-
post
Post #5





Goście







No takie odliczanie to byś musiał odejmować od daty tej w przyszłości powiedzmy $datateraz z powyższego przykładu. I zrobić warunek if ($dataprzyszłość =< $datateraz ) { echo 'odliczanie skończone, pozostało 0000-00-00 00:00:00'; } else { echo $czaspozostaly; }
Go to the top of the page
+Quote Post
-Gość-
post
Post #6





Goście







a jak zrobi aby pokazalo istniejemy iles lat, iles miesiecy, iles dni, iles godzin , iles sekund ?
Go to the top of the page
+Quote Post
Tuomi
post
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.12.2012

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


A jak zrobić, żeby wyświetlało: x lat, x miesięcy, x godzin, x minut, np.: Zyję już x lat, x miesięcy itd. I Drugie pytanie, czy dałoby radę zrobić, by sekundy wyświetlane były tak jak np w zegarku?

Ten post edytował Tuomi 14.02.2013, 01:23:02
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: 19.08.2025 - 19:54