Онлайн-руководство разработчика NetCat
Модуль «Поиск по сайту» 12.2.1Начало работы с модулем 12.2.2Язык запросов 12.2.3Способы хранения индекса 12.2.4Интерфейс модуля в панели управления сайтом 12.2.5Области индексирования 12.2.6Области HTML-страниц 12.2.7Области поиска на сайте 12.2.8Индексирование по расписанию, запуск индексирования в фоновом режиме 12.2.9Правила индексирования 12.2.10Постановка задачи переиндексирования в очередь 12.2.11Интеграция модуля в макеты дизайна сайта 12.2.12Простая форма поиска 12.2.13Расширенная форма поиска 12.2.14Вывод результатов поиска 12.2.15Стилизация списка подсказок 12.2.16Расширенные настройки 12.2.17Разработка расширений модуля 12.2.18Обзор архитектуры модуля 12.2.19Обработчики документов различных типов 12.2.20Текстовые фильтры 12.2.21Анализаторы текста 12.2.22Корректировщики запросов 12.2.23Подключение других поисковых систем 12.2.24Решение проблем с поиском 12.2.25Решение проблем с индексированием 12.2.26Справочник API

API

nc_numeral_inclination( $quantity, $arForms )

склонение числительных

Параметр Описание
$quantity число для которого выводим склонение
$arForms массив форм слова

Массив форм слова формата (единственное число, двойственное, множественное), например array('этаж','этажа','этажей') или ('а','ы','') для слова "Квартир".

echo nc_numeral_inclination( 20, array('этаж','этажей','этажа') )

Комментарии 1

sparton  Шекера Евгений 19 ноября 2014, 17:05:54
Функция выдает "28 этаж".

Предлагаю замену
[CODE]
/**
* Функция склонения числительных в русском языке
*
* @param int $number Число которое нужно просклонять
* @param array $titles Массив слов для склонения
* @return string
*
* echo 'Я знаю '.num_dec(5, array('иностранный язык', 'иностранных языка', 'иностранных языков'));
**/
function num_dec($number, $titles) {
$cases = array (2, 0, 1, 1, 1, 2);
return $titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ];
}
[/CODE]
   

Описание проекта