Baco
Гуру форума
- Регистрация
- 10 Мар 2013
- Сообщения
- 134
- Реакции
- 52
- Автор темы
- #1
доброго часу, коллеги, на проектах частенько люблять прискурпульозитись до таких ньюансів, як корректне значення множини у іменниках, наприклад у опенкарті, на сторінках з товарами є пагінація сторінок і постфіксний припис по типу string :
"(Всього 1 сторінок з 123)"
якщо пропустити через плюралізатор, то вийде ось яка варіація, якщо у файлі helpers/general.php додати ось такі рядочки та підключити у потрібному контроллері, попередньо отримавши массив під кожну мову множин:
для 101 сторінки писатиме: (всього 101 сторінка)
для 523 сторінки писатиме: (всього 523 сторінки)
для 300 сторінки писатиме: (всього 300 сторінок)
enjoy with nulled.cc
"(Всього 1 сторінок з 123)"
якщо пропустити через плюралізатор, то вийде ось яка варіація, якщо у файлі helpers/general.php додати ось такі рядочки та підключити у потрібному контроллері, попередньо отримавши массив під кожну мову множин:
PHP:
/*
/ autor: vaso aKa Baco; for nulled.cc; use ex.:
/ $pagination_postfix = reNumerator(101, array('сторінка', 'сторінки', 'сторінок'));
*/
function reNumerator(int $number, array $target): string {
$cases = [2, 0, 1, 1, 1, 2];
return $number . ' ' . ($target ? $target[($number % 100 > 4 && $number % 100 < 20) ? 2 : $cases[min($number % 10, 5)]] : false);
}
для 101 сторінки писатиме: (всього 101 сторінка)
для 523 сторінки писатиме: (всього 523 сторінки)
для 300 сторінки писатиме: (всього 300 сторінок)
enjoy with nulled.cc
Последнее редактирование: