Часто у разработчиков появляется необходимость склонять слова используя различные падежи. Например склонение числа, когда вам необходимо вывести надпись указывающую на количество добавленных в корзину товаров или показать в карточке товара сколько свободной продукции осталось на складе и т.д. К счастью есть готовые решения наподобие функции ниже:

/**
 * Склонение слова после числа
 * @param $number - число
 * @param $after - массив слов в различных падежах, напр. ['товар', 'товара', 'товаров']
 */
function plural_form($number, $after) {
    $cases = array (2, 0, 1, 1, 1, 2);
    return $number.' '.$after[ ($number%100>4 && $number%100<20)? 2: $cases[min($number%10, 5)] ];
}

Первым аргументов функция принимает целое число, вторым аргументом идёт массив существительного в именительном падеже, родительном падеже (в единственном и множественном числе). Функция вернёт строку с числом и правильно формой существительного. Пример:

$productsCnt = 1;
echo 'На складе ' . plural_form($productsCnt, ['товар', 'товара', 'товаров']); //На складе 1 товар

или

$productsCnt = 15;
echo 'В корзине ' . plural_form($productsCnt, ['товар', 'товара', 'товаров']); //В корзине 15 товаров

Использование падежей улучшает восприятие сайта пользователем. Применяйте эту функцию в своих проектах. Желаю удачи!

Полезная статья?
(Голосов: 1, Рейтинг: 3.3)
Вам также могут понравиться
Как подключить CSS и JS файлы к шаблону 1С Битрикс

Как подключить CSS и JS файлы к шаблону 1С Битрикс

Как правильно подключать стили и скрипты к шаблону 1С Битрикс.

Генерация оглавления статьи

Генерация оглавления статьи

В статье рассмотрен пример функции для генерации оглавления статьи блога или новости

Переменные доступные в компоненте 1С Битрикс

Переменные доступные в компоненте 1С Битрикс

В статье разобран список доступных в компоненте 1С Битрикс переменных, позволяющих получить доступ к различным параметрам и методам компонента.


Комментарии
Защита от автоматических сообщений
CAPTCHA
Введите слово на картинке