Помогите с кодом плиз

D
На сайте с 28.06.2008
Offline
1101
397

Есть таблица informer_statistic с полями id и host

Нужно просто выводить на сайт число хостов. Пытаюсь выводить так:

<?php

echo mysql_result(mysql_query("SELECT COUNT(`id`) AS `c` FROM `informer_statistic` WHERE 1"),0,'c'); /* */

?>

Это число выводится в предложении -

"... число сайтах"

Но к примеру, если число заканчивается на 1, то лучше писать "сайте"

Как это прописать в коде? Чтобы все показывало "сайтах", а если кол-во хостов заканчивается на 1, то выводило бы "сайте"

DiAksID
На сайте с 02.08.2008
Offline
218
#1

самое тупое - преобразовать в строку и анализировать последний символ, без затей 😂


a = (string) b;
if ( a[strlen(a) -1] == '1' )
{
...
}
show must go on !!!...
LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#2

Поменяй суть предложения а, ну или

<?php

function numberEnd($number, $titles) {

$cases = array (2, 0, 1, 1, 1, 2);

return $titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ];

}

echo numberEnd(mysql_result(mysql_query("SELECT COUNT(`id`) AS `c` FROM `informer_statistic` WHERE 1"),0,'c'),array('е','ах')); /* */

?>

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
D
На сайте с 28.06.2008
Offline
1101
#3

К сожалению совсем не знаю пхп, как это засунуть в код выше?

---------- Добавлено в 10:30 ---------- Предыдущее сообщение было в 10:29 ----------

О LEOnidUKG подтянулся и как обычно все расжевал для тех кто в танке, спасибо! :)

[Удален]
#4

function plural ($a){

if ($a%10==1 && $a%100!=11){ return 0; }

elseif($a%10>=2 && $a%10<=4 && ($a%100<10 || $a%100>=20)) { return 1; }

else {

return 2;

}

}

function plural_str ($i, $str1, $str2, $str3){

$plural= plural ($i);

switch ($plural) {

case 0:

$out_str = $str1;

break;

case 1:

$out_str = $str2;

break;

default: $out_str = $str3;

}

return $out_str;

}

Пример

plural_str($row['count'], 'сайт ', 'сайта ', 'сайтов').

Наверное это то что вам нужно!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий