Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

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

Короткий ответ

Метод diff() возвращает промежуток между датами; свойство y — число полных лет:

<?php
 
$birth = new DateTimeImmutable('1990-06-15');
$today = new DateTimeImmutable('2025-01-30');
 
echo $birth->diff($today)->y;

Результат:

34

Проверка совершеннолетия

Сравните число лет с порогом:

<?php
 
$birth = new DateTimeImmutable('2010-03-01');
$today = new DateTimeImmutable('2025-01-30');
 
var_dump($birth->diff($today)->y >= 18);

Результат:

bool(false)

Функции из этого ответа

  • DateTimeImmutable — Объект даты и времени, который нельзя изменить: каждое действие возвращает новый объект.
  • checkdate — Проверяет, существует ли такая дата.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.