- All credits belongs to the original bigit/vokativ library author Petr Joachim.
- This is just port to support higher versions of PHP (and to have atomatic tests on push).
Oslovte své uživatele správně!
composer require granam/czech-vocative
<?php
use Granam\CzechVocative\CzechName;
$name = new CzechName();
$name->vocative('Petr'); // 'Petře'
$name->vocative('Novák'); // 'Nováku'
$name->vocative('Adriana'); // 'Adriano'
$name->vocative('Fialová'); // 'Fialová'
Funkce vocative($name, $isWoman = null, $isLastName = null)
bere jako první argument vlastní jméno v 1. pádu jednotného čísla a vrátí ho vyskloňované v 5. pádu.
Upozorňujeme, že funkce nemusí fungovat správně pro jména cizího původu.
$isWoman
Použijte true
, pokud si přejete zadané jméno skloňovat jako ženské.
Použijte false
, pokud si přejete zadané jméno skloňovat jako mužské.
Ve výchozím případě null
je pohlaví detekováno automaticky.
<?php
use Granam\CzechVocative\CzechName;
$name = new CzechName();
$name->vocative('Michel'); // 'Micheli' - automaticky jako mužské
$name->vocative('Michel', false); // 'Micheli - výslovně mužské'
$name->vocative('Michel', true); // 'Michel - výslovně ženské'
$isLastName
Použijte true
, pokud si přejete zadané jméno skloňovat jako příjmení.
Použijte false
, pokud si přejete zadané jméno skloňovat jako křestní jméno.
Ve výchozím případě null
je typ jména detekován automaticky.
Hodnota tohoto parametru ovlivňuje pouze skloňování ženských jmen.
<?php
use Granam\CzechVocative\CzechName;
$name = new CzechName();
$name->vocative('Ivanova'); // 'Ivanova' - automaticky příjmení
$name->vocative('Ivanova', true, true); // 'Ivanova'
$name->vocative('Ivanova', true, false); // 'Ivanovo'
Knihovna vokativ poskytuje také jednoduchou funkci na detekci pohlaví podle křestního jména či příjmení. Pro četnosti jmen v ČR podle statistického úřadu funkce funguje správně v 99.7% případů.
<?php
use Granam\CzechVocative\CzechName;
$name = new CzechName();
$name->isMale('Michal'); // true
$name->isMale('Novák'); // true
$name->isMale('Tereza'); // false
$name->isMale('Nováková'); // false
Tato knihovna vznikla jako reimplementace původní implementace Python knihovny Vokativ autora Michala Daniláka https://github.com/Mimino666/vokativ/.