Использую эту функцию на своих проекта, чтобы поставить нужное окончание для слова в зависимости от числа.
Пример:
5000 фишка => 5000 фишек.
Пример кода в комментарии к функции.
/**
* Вывод окончания слова в зависимости от значения числа
* Пример: 5000 фишка => 5000 фишек
* echo '5000 фиш'.Common::trueEnd(5000, 'ка', 'ки', 'ек');
*
* Как задать параметры: выводим начало слова, а окончание выведет функция
* n1 - 1 фиш-ка
* n2 - 2 фиш-ки
* n5 - 5 фиш-ек
* @param int $number
* @param string $n1
* @param string $n2
* @param string $n5
* @return string
*/
public static function trueEnd($number, $n1, $n2, $n5)
{
$number = (is_array($number)) ? count($number) : (int) $number;
$ch = (int) substr($number, -2);
if ($ch > 4 and $ch < 21) return $n5;
$ch = (int) substr($number, -1);
if ($ch == 1) return $n1;
return ($ch > 1 and $ch < 5) ? $n2: $n5;
}