Время PHP с функции?

Я ищу функцию, которая будет принимать временную метку unix и выводит что-то вроде этого:

4 года, 3 месяца, 12 дня, 4 часа и 23 минут назад.

Все, что я нашел, было довольно датированным, что просто сказать что-то похожее на "5 лет назад", которое я не хочу.

Ответ 1

Вы хотите DateInterval:

$date = new \DateTime();
$date->setTimestamp($timestamp);
$interval = $date->diff(new \DateTime('now'));
echo $interval->format('%y years, %m months, %d days, %h hours and %i minutes ago');