Задать вопрос
darkleviathan
@darkleviathan

Как подсчитать при помощи php количество дней от рождения человека?

Никак не соображу как рассчитать количество дней от рождения при условии что человеку может быть меньше 1-го года, месяца, недели или дня

Есть базовые переменные:
дата рождения и текущая дата.
Полных лет считаю для взрослого например так:
$birthdate=19880315;
$today=20190614;
$diff=$today-$birthdate;
$diff=$diff/10000;
$age=intval($diff);
echo $age;

Но этот алгоритм выведет полных лет.
Я знаю что количество лет можно умножить на 360 дней в году и потом добавить еще зависимости високосных годов
.Но как высчитать возраст детей младше 1-го года я так и не нашел.
Возможно кто-то поделиться своими соображениями или вариантами.
  • Вопрос задан
  • 318 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 4
DevMan
@DevMan
пользовать нативный DateTime или Carbon для удобства.
Ответ написан
Комментировать
alams_stoyne
@alams_stoyne
Full Stack Developer - #PHP #CSS #JS #DB
$now = time(); 
$your_date = strtotime("2019-06-10");
$datediff = $now - $your_date;
echo round($datediff / (60 * 60 * 24));
Ответ написан
Комментировать
@Flying
$birthday = 19880315;
$age = (new DateTime('now'))->diff(DateTime::createFromFormat('Ymd',(string)$birthday), true)->y;
Ответ написан
Комментировать
<?php

$birthday = '1997-04-25';

$birthday = new DateTime($birthday);
$now = new DateTime();

$days = $now->diff($birthday)->format('%a');

echo 'Вы живёте уже ', $days, ' дней ;)';

IdeOne
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
samodum
@samodum
Какой вопрос - такой и ответ
В году не 360 дней. Это вы с прямым углом перепутали :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы