-
-
Notifications
You must be signed in to change notification settings - Fork 0
Features
github-actions[bot] edited this page Jul 16, 2026
·
1 revision
Мультиязычный инфлектор без зависимостей. Каждая группа возможностей разобрана на отдельной странице — с принципом работы, плюсами и минусами, рекомендациями, антипаттернами, схемой и сравнением с аналогами.
mindmap
root((Inflector))
Языки
Русский
Английский
Немецкий
Французский
Испанский
Авто-определение
Число
pluralize
singularize
Счётная форма
Грамматика
6 падежей RU
Genitiv/Dativ DE
Спряжение 3 времени
Транслитерация
ru → lat
lat → ru
Слаги
Имена ORM
tableize
classify
camelize
| Раздел | Что внутри |
|---|---|
| 🌍 Языки и определение | Пять языков, контракт правил, авто-детект по алфавиту/диакритике/стоп-словам |
| 🔢 Число и счётная форма |
pluralize/singularize, нерегулярные/неисчисляемые, pluralizeByCount (1 товар / 2 товара / 5 товаров) |
| 📐 Склонение и спряжение | 6 русских падежей обоих чисел, немецкие Genitiv/Dativ, спряжение по временам/лицам/числам на 5 языках |
| 🔤 Транслитерация и слаги | Кириллица ↔ латиница, автонаправление, слаги, порядковые числительные по языкам |
- Zero-dependency — только PHP 8.1+, без расширений и внешних пакетов.
-
Единый контракт —
LanguageRulesInterfaceдля всех языков; новый язык — одна реализация без изменения фасада. - Fail-safe — неизвестный или «грязный» ввод возвращается без исключений; ввод — данные, не код.
- Ограниченная память — bounded-кэши со сбросом на всех горячих путях: O(1) на повторе, отсутствие утечек на уникальном вводе.
- Честные ограничения — регулярные парадигмы без полного словаря; границы описаны в PHPDoc каждого правила.
CloudCastle Inflector · · PHP 8.1+
GitHub · Packagist · Releases · Discussions
Email · Telegram · VK · Сетка · 💜 Поддержать проект
Исходники Wiki — каталог wiki/ в репозитории (синхронизация через GitHub Actions)