Ciao, spulciando nella rete ho trovato una funzione per calcolare l'età di un utente in base alla data di nascita.
La funzione è questa:
La funzione restituisce l'età, ma c'è un problema. Se inserisco una data di nascita avanti col tempo in base alla data corrente, ma dello stesso anno (per esempio: 1972-20-04 : ovvero 20 aprile 1972) la funzione mi restituisce anni 42 anche se l'utente ha ancora 41 anni visto che il suo compleanno sarà in aprile.
Sapreste aiutarmi?
Grazie
La funzione è questa:
PHP:
function age($Birthdate)
{
//$Birthdate = "$year-$month-$day";
list($BirthYear,$BirthMonth,$BirthDay) = explode("-", $Birthdate);
// Find the differences
$YearDiff = date("Y") - $BirthYear;
$MonthDiff = date("m") - $BirthMonth;
$DayDiff = date("d") - $BirthDay;
// If the birthday has not occured this year
if ($DayDiff < 0 || $MonthDiff < 0)
$YearDiff--;
return $YearDiff;
}
La funzione restituisce l'età, ma c'è un problema. Se inserisco una data di nascita avanti col tempo in base alla data corrente, ma dello stesso anno (per esempio: 1972-20-04 : ovvero 20 aprile 1972) la funzione mi restituisce anni 42 anche se l'utente ha ancora 41 anni visto che il suo compleanno sarà in aprile.
Sapreste aiutarmi?
Grazie