-
-
Notifications
You must be signed in to change notification settings - Fork 0
Feature Gender
github-actions[bot] edited this page Jul 16, 2026
·
1 revision
Для существительных Gender читается как грамматический род, для имён —
как пол носителя. Common — слова общего рода и имена-унисекс.
use CloudCastle\Dictionary\{Dictionary, Gender, WordClass};
$names = Dictionary::load('ru', WordClass::GivenName);
$names->find('Александр')?->gender; // Gender::Masculine
$names->find('Александра')?->gender; // Gender::Feminine
$names->find('Саша')?->gender; // Gender::Common — унисексОбратный индекс работает и здесь: пол определяется по любой падежной форме имени — ни один из аналогов этого не умеет.
$names->find('Петре')?->gender; // Masculine — предложный падеж «Пётр»
$names->find('Сашу')?->gender; // Common — винительный «Саша»Gender::Common->coversMasculine(); // true
Gender::Common->coversFeminine(); // true
Gender::Feminine->coversMasculine(); // falseИспанские словари фиксируют род, который не угадывается по окончанию;
одушевлённость (animate) важна для винительного падежа русского.
$es = Dictionary::load('es', WordClass::Noun);
$es->find('mano')?->gender; // Feminine — la mano
$es->find('día')?->gender; // Masculine — el día
Dictionary::load('ru', WordClass::Noun)->find('человек')?->animate; // trueУнисекс-имена есть во всех языках: Саша/Женя (ru), Kim (de), Camille/Claude/Dominique (fr), Guadalupe/Cruz (es).
CloudCastle Dictionary · · PHP 8.1+
GitHub · Packagist · Releases · Discussions
Email · Telegram · VK · Сетка · 💜 Поддержать проект
Исходники Wiki — каталог wiki/ в репозитории (синхронизация через GitHub Actions)