Рецепт №45. Из книги «128 рецептов php»
Перейти к оглавлению
Для определения возраста достаточно проверить, было уже день рождение в текущем году или нет. Если уже прошло, то необходимо из текущего года вычесть год рождения. А если день рождения еще не прошел, то необходимо из текущего года вычесть год рождения и еще минус один год.
Пример:
/*
* Получение возраста
* $day - день
* $mouth - месяц
* $year - год
*/
function getAge($day, $mouth, $year){
// если в этом году уже был день рождения
if( $mouth > date('m') ||
$mouth == date('m') &&
$day > date('d')
){
return (date('Y') - $year - 1);
}else{
// если еще не прошел день рождения
$result = date('Y') - $year;
}
return $result;
}
// пример использования
echo getAge(24, 1, 1989);
