bakor.info

Склонение множественного числа слова на PHP

Опубликовано: 01.09.2018

видео Склонение множественного числа слова на PHP

Учите итальянский слова | Урок Прилагательных | Количественные Прилагательные

Передо мной встала такая задача, когда я занимался интернет-магазином Blue Jay и мне требовалось вывести общее количество товаров в категориях. Мне очень хотелось решить поставленную задачу качественно, то есть, чтобы выводилось «1 товар», «2 товарА», «5 товарОВ», а не «1 товаров» и «2 товаров».


Количественные и порядковые числительные в английском языке

Да уж, тут англичанам хорошо, у них если один товар, то «product», а если не один, то «products». В русском же языке есть три формы множественного числа, да ещё и слово постоянно склоняется в зависимости от чисел, которые стоят перед ним.

Поэтому передо мной встал выбор — либо вообще избавиться от надписи с общим числом товаров, либо как-то упростить её, либо добавить функцию, которая будет склонять слова — на третьем варианте я и остановился:

/* * $num число, от которого будет зависеть форма слова * $form_for_1 первая форма слова, например Товар * $form_for_2 вторая форма слова - Товара * $form_for_5 третья форма множественного числа слова - Товаров */ function true_wordform ( $num , $form_for_1 , $form_for_2 , $form_for_5 ) { $num = abs ( $num ) % 100 ; // берем число по модулю и сбрасываем сотни (делим на 100, а остаток присваиваем переменной $num) $num_x = $num % 10 ; // сбрасываем десятки и записываем в новую переменную if ( $num > 10 && $num < 20 ) // если число принадлежит отрезку [11;19] return $form_for_5 ; if ( $num_x > 1 && $num_x < 5 ) // иначе если число оканчивается на 2,3,4 return $form_for_2 ; if ( $num_x == 1 ) // иначе если оканчивается на 1 return $form_for_1 ; return $form_for_5 ; }

Если вы хотите использовать эту функцию в WordPress, то можете вставить её в файл functions.php — вы можете найти его в папке с темой.

Всё довольно просто. Теперь, когда я расписал, как это работает, приведу пример:

$max_product = 5 ; // число, эта переменная может задаваться через какую-то другую функцию или доставаться из базы - неважно echo $max_product . ' ' . true_wordform ( $max_product , 'товар' , 'товара' , 'товаров' ) ; // в результате получится "5 товаров"

Читайте также о том, как реализовать склонение слов на JavaScript .

Смотрите также

Чтение RSS

Новости

    Где купить рассеиватель для вспышки

    Я люблю работать с качественной техникой, именно поэтому мои фото всегда шикарны, у меня много высокооплачиваемых заказов! Часто покупаю для фотоаппарата всевозможные устройства, пробую, выбираю и

    Где купить чехол на айфон

    Просто обожаю свой телефон. А как можно его не любить, если он мне заменил всё - и навигатор, и камеру, и нетбук, и регистратор, и шагометр, и электронную книгу, и фоторамку. Это уже не говоря об смсках,

    Мезонины (многоярусные стеллажи)
    Компания ЄСТ выполняет изготовление и монтаж стеллажного оборудования. Монтаж мезонин (сборка многоярусных стеллажей)-это перспективное направление, которое пользуется широкой популярностью среди потребителей.

    Стеклянные душевые перегородки
    Пересматривая последние дизайнерские решения оформления ванной, душевой комнаты, обратила внимание, что сейчас очень современно использовать стеклянные душевые перегородки. Компания SKSTEKLO предлагает

    Сопло для пескоструйного пистолета в Москве
    Как известно, пескоструйные аппараты применяются там, где нужно быстро и тщательно почистить какую-нибудь поверхность. Чаще всего, понятное дело, очистке таким вот способом подвергаются металлические

    Фитнес меню с доставкой
    Его создателем и владельцем является Эвелина Иванова, для которой не в новинку работа в ресторанной сфере: раньше она была управляющей ресторана «Семейные традиции», а также трудилась официанткой в других

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

    Каркасные дома своими руками
    Быстровозводимые дома презентабельны тем, что при готовом фундаменте поставить сам дом можно очень стремительно.  Например, постройка каркасного дома своими руками, силами 2-ух человек,  возможна в месяц

    Фасадные панели под кирпич цена
    Фасад из кирпича можно назвать универсальной классикой: он одинаково хорош и в городской застройке, и в малоэтажном загородном посёлке. Этот материал всегда выглядит добротно и надёжно, но отнюдь не скучно:

    Дом из профилированного бруса
    Брус - экологически чистый материал, который выпилен из цельного дерева. Брусу придаётся прямоугольная форма. Материалом для изготовления бруса чаще всего становится ель и сосна. Смола, содержащаяся в

Популярное

rss