Общие сведения

Отображение правильных форм множественного числа в зависимости от количества элементов называется плюрализация.

В русском языке есть 3 варианта окончания слов. Например: 1 товар, 7 товарОВ, 23 товарА и т.д.

На данной странице представлены правила плюрализации для разных языков. Для русского языка формула следующая:

plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);

Функция на php

Исходя из этого, пишем небольшую функцию, которая возвращает нужную форму слова в зависимости от переданного количества:

<?php

function plural_form($n, $forms)
{
    return $n % 10 == 1 && $n % 100 != 11
        ? $forms[0]
        : ($n % 10 >= 2 && $n % 10 <= 4 && ($n % 100 < 10 || $n % 100 >= 20)
            ? $forms[1] : $forms[2]);
}

Использование

Пользуемся данной функций следующим образом:

<?php

echo plural_form(1, ['штука', 'штуки', 'штук']); //штука
echo plural_form(3, ['рубль', 'рубля', 'рублей']); //рубля
echo plural_form(5, ['конфета', 'конфеты', 'конфет']); //конфет