Bei der Entwicklung einer Prominenten Datenbank bin ich auf das Problem gestoßen, das Alter dieser Personen zu berechnen. Weil wir das Tool kurzfristig brauchten, habe ich mich nach einer fertigen PHP Funktion umgeschaut. Dort gibt es mehre hundert Lösungen, aber irgendwie funktionieren die nicht sauber, weil die Schaltjahre nicht berücksichtig wurden. Daher dachte ich mir ich veröffentliche mal meine Lösung dazu:
function alter($vonTag, $vonMonat, $vonJahr,$bisTag, $bisMonat, $bisJahr) {
$vonTagImJahr = date("z", mktime(0, 0, 0, $vonMonat, $vonTag, $vonJahr));
$bisTagimJahr = date("z", mktime(0, 0, 0, $bisMonat, $bisTag, $bisJahr));
if ($vonTagImJahr-$bisTagimJahr>0) { $diff = 1; }
return ($bisTagimJahr - $vonTagImJahr) - $diff;
}
Ich glaube der Lösungsweg ist so kurz und einfach, dass den jeder Nachvollziehen kann.
