Как сделать склонение слов после числительных дней в php?
у меня есть код который высчитывает кол-во дней с определённой даты. Я хочу сделать чтобы в зависимости от количества дней выводилось когда прошёл 1 день 2 дня 5 дней и т.д Вот как у меня сделано сейчас:
$work = time();
$time = mktime(0, 0, 0, 8, 21, 2022);
echo " работает уже ".floor(($work - $time) / 86400);
echo " дня";
Ответы (1 шт):
Автор решения: rusgeli
→ Ссылка
Есть вот такой вариант:
$work = time();
$time = mktime(0, 0, 0, 4, 21, 2022);
$diff = floor(($work - $time) / 86400);
echo " работает уже " . $diff . " " . echo_days($diff);
function echo_days($days) {
if($days % 10 == 1 && ($days % 100 > 19 || $days < 11 )) {
return "день";
} else if ($days % 10 > 1 && $days % 10 < 5 && ($days % 100 >19 || $days < 11 )) {
return "дня";
} else {
return "дней";
}
}