пятница, 18 октября 2019 г.

Склонение слов в зависимости от числа, русский язык

Моя версия php функции.

function word_variation_rus($chislo, $mnogo, $odin, $dva) {
    // @author Alexey Gnevyshev
    $ost_10  = $chislo%10;
    if ($ost_10 == 0 || $ost_10 >= 5 || in_array($chislo%100, range(11,19))) $string_txt = "$chislo $mnogo";
    else {
        if ($ost_10 == 1) $string_txt = "$chislo $odin";
        else if (in_array($ost_10, range(2,4))) $string_txt = "$chislo $dva";
    }
    return $string_txt;
}
Пример:

$chislo = 2 // например
echo word_variation_rus($chislo, 'дней', 'день', 'дня');

Комментариев нет:

Отправить комментарий