вопрос
имеется:
нужно сделать правильные окончания в зависимости от числа, к примеру 1 посещение, 2 посещения, 10 посещений и т.д
<body>
Вчера:
<?php echo($last["totals"]["visits"]);?> посещений,
<?php echo($last["totals"]["page_views"]);?> просмотров страниц.
</body>
нужно сделать правильные окончания в зависимости от числа, к примеру 1 посещение, 2 посещения, 10 посещений и т.д
Используйте встроенную функцию склонения.
либо вот такой код:
declination()
либо вот такой код:
<?php
/**
* Функция для установки правильного окончания слов
* @param int $n - число, для которого будет расчитано окончание
* @param string $words - варианты окончаний для (1 комментарий, 2 комментария, 100 комментариев)
* @return string - слово с правильным окончанием
*/
function declinationWorld($n = 0, $words) {
$words = explode('|', $words);
$n = intval($n);
return $n % 10 == 1 && $n % 100 != 11 ? $words[0] . $words[1] : ($n % 10 >= 2 && $n % 10 <= 4 && ($n % 100 < 10 || $n % 100 >= 20) ? $words[0] . $words[2] : $words[0] . $words[3]);
}
// Пример работы
for ($total = 0; $total < 102; $total++) {
echo 'Всего: ' . $total . ' ' . declinationWorld($total, 'комментари|й|я|ев') . '<br />';
}