Вычисление возраста по дате рождения является общим требованием во многих приложениях PHP. В этой статье блога мы рассмотрим различные методы выполнения этой задачи на примерах кода PHP. К концу этой статьи вы получите четкое представление о различных подходах к расчету возраста по заданной дате рождения.
Метод 1. Использование классов DateTime и DateInterval
function calculateAge($dob) {
$today = new DateTime();
$birthdate = new DateTime($dob);
$age = $birthdate->diff($today)->y;
return $age;
}
// Usage
$dob = '1990-05-15';
$age = calculateAge($dob);
echo "Age: " . $age;
Метод 2. Использование функций strtotime и date
function calculateAge($dob) {
$today = strtotime(date('Y-m-d'));
$birthdate = strtotime($dob);
$age = date('Y', $today) - date('Y', $birthdate);
if (date('md', $birthdate) > date('md', $today)) {
$age--;
}
return $age;
}
// Usage
$dob = '1990-05-15';
$age = calculateAge($dob);
echo "Age: " . $age;
Метод 3. Использование библиотеки Carbon
require 'vendor/autoload.php';
use Carbon\Carbon;
function calculateAge($dob) {
$birthdate = Carbon::parse($dob);
$age = $birthdate->diffInYears(Carbon::now());
return $age;
}
// Usage
$dob = '1990-05-15';
$age = calculateAge($dob);
echo "Age: " . $age;
Метод 4. Использование класса DateTimeImmutable (PHP 8+)
function calculateAge($dob) {
$today = new DateTimeImmutable();
$birthdate = new DateTimeImmutable($dob);
$age = $birthdate->diff($today)->y;
return $age;
}
// Usage
$dob = '1990-05-15';
$age = calculateAge($dob);
echo "Age: " . $age;
Метод 5. Использование библиотеки Carbon и специальной функции
require 'vendor/autoload.php';
use Carbon\Carbon;
function calculateAge($dob) {
$today = Carbon::now();
$birthdate = Carbon::createFromFormat('Y-m-d', $dob);
$age = $today->diffInYears($birthdate);
return $age;
}
// Usage
$dob = '1990-05-15';
$age = calculateAge($dob);
echo "Age: " . $age;
В этой статье мы рассмотрели пять различных методов расчета возраста по заданной дате рождения в PHP. Каждый метод предлагает уникальный подход, будь то использование встроенных функций PHP или внешних библиотек, таких как Carbon. Выберите метод, который лучше всего соответствует требованиям вашего проекта, и наслаждайтесь точными расчетами возраста в своих PHP-приложениях.