PHP - obliczanie wieku osoby na podstawie daty urodzenia i daty teraźniejszej
| DZIAŁANIE: | Mam 26 lat |
Kod:

Ewentualne Objaśnienia:
Oto jedna z możliwości obliczania różnicy dni między dwoma datami - tutaj
między datą urodzenia, a dniem dzisiejszym. Nie jest to do końca najlepsza
metoda, ale o tym na końcu. Obliczamy tutaj różnicę między dwoma datami, które
wcześniej przekształciliśmy funkcją mktime, którą już znacie.
Rzecz jasna nasza różnica po obliczeniu nadal jest w sekundach więc trzeba ją
"przerobić" z sekund na lata - więc dzielimy odpowiednio przez 365dni razy 24
godziny razy 60minut razy 60 sekund. Z takiego dzielenia wyciągamy część
całkowitą ( floor - zaokrągla również w dół, żeby nie pokazywać, że osoba ma na
przykład 30 lat zanim nie ukończy tego wieku ).
Jak mówiłem nie jest to idealna metoda - korzystamy ze znaczników unixowych jakie dostajemy dzięki mktime, jednak jak wiadomo działania takie mają sens na datach powyżej 1970 roku. Kolejna wada to brak uwzględnienia lat przestępnych czy też zmiany czasu letniego na zimowy w dniu urodzenia. W przyszłości pokażę jeszcze inny przykład .