В Carbon - через функции локализации.
Внутри carbon использует
symfony/translation, (
pluralization)
<?php
$daysTranslator = 'ru_Days';
$translator = \Carbon\Translator::get($daysTranslator);
$translator->setTranslations([
'day' => ':count день|:count дня|:count дней',
]);
$date1 = Carbon::create(2018, 1, 1, 0, 0, 0);
$date1before = Carbon::create(2018, 1, 2, 4, 0, 0);
$date2before = Carbon::create(2018, 1, 3, 4, 0, 0);
$date5before = Carbon::create(2018, 1, 6, 4, 0, 0);
$localized=$date1->locale($daysTranslator);
echo $localized->diffForHumans($date1before)."\n";
echo $localized->diffForHumans($date2before)."\n";
echo $localized->diffForHumans($date5before)."\n";
// 1 день до
// 2 дня до
// 5 дней до
Ещё сюда загляните -
Склонение числительных