Количество чатеров

Печать RSS
252

N
Автор
Эцилопп сией тентуры
0
Вот решил сделать у себя в чате типа если на сайте 1 человек, то выводило:
на сайте 1 чатер
А если на сайте 2 человека то выводило
на сайте 2 чатера
-----------------
Но как подумал сколько это надо сидеть над этим ужаснулся D т.к это надо перебирать как минимум 100 случаев!
-----------------------
Может у кого неть есть уже готовый скрипт?
-----------------------
Изменил: Nu3oN (05.11.2009 / 14:41)

Ктулху
0
Зачем перебирать? Есть же законеомерность... щас выложу функцию

Ктулху
0
<?php
function russian_text($koll, $texts){
$str1 = substr($koll, -1);
$str2 = substr($koll, -2, -1);
if($str2 != 1 and $str1 == 1)
return $texts[0];
elseif($str2 != 1 and ($str1 == 2 or $str1 == 3 or $str1 == 4))
return $texts[1];
else return $texts[2];
}
//$total - количество комментариев, например
echo $total .' '. russian_text($total, array('комментарий', 'комментария', 'комментариев'));
?> 
T

Чатланин
0
считай сколько цифер в числе и вырезай последнее.
тоесть если число 2 то 2 если 43 то 3
и по вырезанному ставь...

Ктулху
0
В твоём случае
<?
echo $total .' '. russian_text($total, array('чатер', 'чатера', 'чатеров')); 
?>
т.е. один, два, много
N
Автор
Эцилопп сией тентуры
0
4. хм! а я даже о этом и не подумал!
сразу if else мучать D
Лови аптечку!
В

Чатланин
0
4 не катит. У тебя получается
11 чатер
12-15 чатера
T

Чатланин
0
Ну там до 20ти надо условия поставить...а дальше все норм...

ツ ツ ツ
0

Ктулху
0
9, Вроде хороший вариант)) Сохранил линк, а тебе +1
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск