Создать ответ 
Склонение существительных с числительными
Автор Сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #1
Склонение существительных с числительными
Приводим простейший скрипт склонения существительных с числительными, который используется на нашем сайте на страничке Черный список IP адресов

PHP код:
$count_end=$count_black_ip;

$count_end abs($count_end) % 100;
if (
$count_end 10 && $count_end 20$ending='ов';
else {
    
$count_end $count_end 10;
       if (
$count_end && $count_end 5$ending='а';
       elseif (
$count_end == 1$ending='';
    else 
$ending='ов';
}
$ending='IP адрес'.$ending;

echo 
'<div align="center">На данный момент в черном списке <b>'.$count_black_ip.'</b> '.$ending.'.</div><br>'

Использовать данный скрипт довольно просто.
В переменную $count_end мы помещаем число (количество чего-либо).
Далее в скрипте мы задаем окончания для чисел, последние цифры которых входят в промежутки от 10 до 20, от 1 до 5, либо равны 1.
В результате работы скрипта нужное нам окончание будет в переменной $ending.

Таким образом, не нужно каждый раз при изменении количества IP адресов, менять окончание существительного в конце предложения. Скрипт это сделает за Вас.
29.10.2011 19:25:40
Найти все сообщения Цитировать это сообщение
Incognito Не на форуме
Лейтенант
*

Сообщений: 138
У нас с: Nov 2011
Сообщение: #2
RE: Склонение существительных с числительными
Извиняюсь за беспокойство, а можно как нибудь Ваш этот клёвый скрипт скрестить вот с этим счётчиком отмеченных чекбоксов:

Код:
<script type="text/javascript">
var count = 0;
$(function() {
    count = $('input[type=checkbox]:checked').length;
    displayCount();

    $('input[type=checkbox]').bind('click' , function(e, a) {  
         if (this.checked) {
              count += a ? -1 : 1;
         } else {
              count += a ? 1 : -1;
         }
         displayCount();
    });
    $('#invert').click(function(e) {    
         $('input[type=checkbox]').trigger('click', true)
    });
});
function displayCount() {
    $('#count').text(count);
}
</script>

<nolayer><font color="black"><div style="position:fixed; top:10px; left:10px; background:white; border: red 2px solid; padding: 5px; box-shadow: 3px 4px 2px #bbb"> Вы выбрали <font color="blue"><b><span id="count"></span></b></font> компонента(ов) из <font color="blue"><b>420</b></font> возможных для этого конструктора !</div></font></nolayer>

... в слове "компонента(ов)" заменить окончание на нужное значение.

Так же хотел спросить можно ли число "420" (общее количество чекбоксов на странице я выставляю вручную) на автоматический подсчёт прямо в скрипте? Smile
(Последний раз сообщение было отредактировано 13.12.2012 в 20:30:15, отредактировал пользователь Incognito.)
13.12.2012 20:29:09
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru