Розділ 2. Вбудовані константи
Оскільки кожен відмінок має свій порядковий номер, то для полегшення роботи з бібліотекою використовуються константи. Опис усіх констант можна знайти у класі NCL. Розглянему усі із них.
Для зазначення статі використовуються костанти:
- NCL::$MAN – чоловіча стать
- NCL::$WOMAN – жіноча стать
Для зазначення відмінків російської мови:
- NCL::$IMENITLN - именительный падеж
- NCL::$RODITLN - родительный падеж
- NCL::$DATELN - дательный падеж
- NCL::$VINITELN - винительный падеж
- NCL::$TVORITELN - творительный падеж
- NCL::$PREDLOGN - предложный падеж
Для зазнаяення відмінків української мови:
- NCL::$UaNazyvnyi – називний відмінок
- NCL::$UaRodovyi – родовий відмінок
- NCL::$UaDavalnyi – давальний відмінок
- NCL::$UaZnahidnyi – знахідний відмінок
- NCL::$UaOrudnyi – орудний відмінок
- NCL::$UaMiszevyi – місцевий відмінок
- NCL::$UaKlychnyi – кличний відмінок
Варто звернути увагу не те, що крім кличного відмінка, в російській та українській мові всі відмінки — це одне і те ж. Тобто немає різниці, використовувати NCL::$RODITLN чи NCL::$UaRodovyi, так як NCL::$RODITLN = NCL::$UaRodovyi.
Використання вбудованих констант
Метод q($fullname, $caseNum=null, $gender=null) має три параметри. Два з них не є обов’язковими.
Параметр $caseNum вказує на форму відмінка, у яку необхідно поставити ПІБ $fullname. Якщо він не вказаний або має значення null, тоді метод повертає масив з усіма відмінками.
Параметр $gender вказує на стать людини. Якщо в якості параметру вказати NCL::$WOMAN, тоді відмінювання буде виконуватися за правилами відмінювання жіночих ПІБ. Якщо ж параметр не вказани або має значення null, тоді система сама визначить стать людини.
У параметре $fullname може бути будь-яка кількість слів. Система сама розділить їх на частини та виконає відмінювання кожної з них.
У файлі Tutorial/lesson2.php наведені приклади використання методу q().
<?php
header('Content-type: text/html; charset=utf-8');
require '../Library/NCL.NameCase.ru.php';
$nc = new NCLNameCaseRu();
/**
* Вказуємо відмінок російською константою
*/
echo $nc->q('Андрей Николаевич', NCL::$RODITLN)."\n";
/**
* Вказуємо відмінок українською константою
*/
echo $nc->q('Андрей Николаевич', NCL::$UaRodovyi)."\n";
/**
* Не вказуємо відмінок
*/
print_r($nc->q('Иващук'));
/**
* Вказуємо чоловічу стать
*/
print_r($nc->q('Иващук', null, NCL::$MAN));
?>
Після виконання отримуємо наступне:
Андрея Николаевича Андрея Николаевича Array ( [0] => Иващук [1] => Иващук [2] => Иващук [3] => Иващук [4] => Иващук [5] => Иващук ) Array ( [0] => Иващук [1] => Иващука [2] => Иващуку [3] => Иващука [4] => Иващуком [5] => Иващуке )