Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> wiek osoby na podstawie PESEL, jak obliczyć?
ktuvok
post
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 0
Dołączył: 30.11.2003

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


Wydawałoby się proste - pobrać z PESEL'u datę urodzenia, przeliczyć na znacznik czasu Unixa, odjąć go od mktime() i przeliczyć na lata... Niestety - znaczniki czasu Unixa obejmują zakres dat od 1970 r.

Jak zatem policzyć wiek osoby na podstawie PESEL'a?

Pozdrawiam,
K
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
xberus
post
Post #2





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 6.08.2003

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


Cytat(plewa @ 2005-04-18 22:52:48)
tylko jak ktos ma pesel np 02 12 06 tak jak ja to moze sie urodzic albo w 1802 albo 1902 albo 2002.

Nieprawda... sposob zapisu zmienia sie przy takich datach:
Cytat
dla osób urodzonych w innych latach niż 1900 - 1999 dodawane są do numeru miesiąca następujące wielkości:
    * dla lat 1800-1899 - 80
    * dla lat 2000-2099 - 20
    * dla lat 2100-2199 - 40
    * dla lat 2200-2299 - 60
wikipedia


I trzeba to uwzglednic...
Nie wiem czy nadal Ci potrzebne, ale dam:
  1. <?
  2. $pesel = '85862711111';
  3.  
  4. $rok=substr($pesel, 0, 2);
  5. $liczba=substr($pesel, 2, 2);
  6. if($liczba<33){
  7. $wiek=1900;
  8.  }elseif($liczba<53){
  9. $wiek=2100;
  10.  } elseif($liczba<73){
  11. $wiek=2200;
  12.  } elseif($liczba<93){
  13. $wiek=1800;
  14.  }
  15.  
  16. $lata = date('Y') - ($wiek + $rok);
  17. echo 'Osoba ma: '.$lata.' lat';
  18. ?>


Kod
Osoba ma: 120 lat


Moze rozwiazanie nie jest optymalne (sprawdza rocznik, a nie miesiac), ale dziala

Ten post edytował xberus 24.04.2005, 06:50:18
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 17:54