Alter-rechnung ist ungenau

xep22

Banned
Registriert
Apr. 2018
Beiträge
395
Mahlzeit! ich habe dieses Script gefunden um sein alter auszugeben, doch irgendwie ist das ungenau... :

PHP:
$tag=19;
$monat=04;
$jahr=1999;
$jetzt=mktime(0,0,0,date("m"),date("d"),date("Y"));
$geburt=mktime(0,0,0,$monat,$tag,$jahr);
$alter=intval(($jetzt-$geburt)/(3600*24*365));

echo $alter;

damit wäre ich ab dem 19.04. 19. ändere ich jetzt den Tag zu z.b. 18, wird aber jetzt schon 19 angezeigt und nicht 18. aber wieso ? Also kurz gesagt das neue Alter wird schon 5 Tage vorher angezeigt... :/
 
Schaltjahre?
 
da das selbe.... aber wie kann ich denn das genaue Alter berechnen lassen ?
 
Also wenn ich das so ausführe:

Code:
<?php
  //date in mm/dd/yyyy format; or it can be in other formats as well
  $birthDate = "04/18/1999";
  //explode the date to get month, day and year
  $birthDate = explode("/", $birthDate);
  //get age from date or birthdate
  $age = (date("md", date("U", mktime(0, 0, 0, $birthDate[0], $birthDate[1], $birthDate[2]))) > date("md")
    ? ((date("Y") - $birthDate[2]) - 1)
    : (date("Y") - $birthDate[2]));
  echo "Age is:" . $age;
?>

kommt das raus:

Code:
Age is:18
 
Ich hab da das im Kopf
Alter in Jahren = Abrunden ( ( JahrMonatTag - JahrMonatTag ) / 10000 )

z.B.
(20180413-19990419)/10000 = 18,9994
Das ganze abrunden dann hast du 18.

Klappt eigentlich ganz gut.
 
Zurück
Oben