аватар Автор: Сергей Касаткин | 13 сентября 2013 22:45

Статьи / PHP /

Как определить возраст пользователя по дате рождения PHP?

Почти на всех сайтах, где у пользователя есть личный кабинет и где подразумевается отображение возраста, есть скрипт который рассчитывает сколько лет пользователю. Всё это возможно, используя данные по дате рождения. Либо при регистрации, как, например, в facebook, либо в личной информации пользователь заносит дату рождения в три переменные с годом, месяцем и днём. Пишем функцию:

Код PHP

<?php
  function getAge($y, $m, $d) { // в качестве параметров будут год, месяц и день
    if($m > date('m') || $m == date('m') && $d > date('d'))
      return (date('Y') - $y - 1); // если ДР в этом году не было, то ещё -1
    else
      return (date('Y') - $y); // если ДР в этом году был, то отнимаем от этого года год рождения
  }
?>

Как работает? Сначала проверяем наступил ли день рождения пользователя в этом году. Если нет, то от года нынешнего отнимаем год рождения и ещё 1 год, так как в этом году он ещё не отпраздновал свой ДР.

Теперь у нас есть рабочая функция, в параметры которой можно вставить год, месяц и дату. При постановке значений скрипт выведет целое число лет пользователя.

Код PHP

$y = "1980"; // переменная с годом рождения пользователя
$m = "10"; // переменная с месяцем рождения
$d = "17"; // переменная с днём

echo getAge($y, $m, $d); // выведет целое число. Например, 33

Скрипт вполне простой.

Спасибо за внимание и удачи в начинаниях!
 



Похожие статьи


Комментарии к статье (vk.com)