2017 © Pedro Peláez
 

library petrovich-php

An easy-to-use PHP Class to decline russian names.

image

topface/petrovich-php

An easy-to-use PHP Class to decline russian names.

  • Friday, June 27, 2014
  • by r3nat
  • Repository
  • 4 Watchers
  • 3 Stars
  • 8,906 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 27 Forks
  • 0 Open issues
  • 1 Versions
  • 6 % Grown

The README.md

Petrovich, (*1)

Склонение падежей русских имён, фамилий и отчеств., (*2)

Портированная версия с Ruby на PHP, (*3)

Лицензия MIT, (*4)

Пример

https://github.com/parshikov/petrovich-php-example, (*5)

Установка

Для работы требуется PHP >= 5.3, (*6)

Загрузите файлы в папку с библиотеками на сервере., (*7)

cd lib
git clone https://github.com/petrovich/petrovich-php.git petrovich-php

если вы хотите использовать petrovich как submodule,, (*8)

git submodule add --init https://github.com/petrovich/petrovich-php.git lib/petrovich-php

или просто скачайте исходный код со страницы проекта на Github., (*9)

Использование

В библиотеку входит класс Petrovich и trait Trait_Petrovich, (*10)

Использование класса

require_once('path-to-lib/petrovich-php/Petrovich.php');

$petrovich = new Petrovich(Petrovich::GENDER_MALE);

$firstname = "Александр";
$middlename = "Сергеевич";
$lastname = "Пушкин";

echo $petrovich->detectGender("Петровна");  // Petrovich::GENDER_FEMALE (см. пункт Пол)

echo '<br /><strong>Родительный падеж:</strong><br />';
echo $petrovich->firstname($firstname, Petrovich::CASE_GENITIVE).'<br />'; //   Александра
echo $petrovich->middlename($middlename, Petrovich::CASE_GENITIVE).'<br />'; // Сергеевича
echo $petrovich->lastname($lastname, Petrovich::CASE_GENITIVE).'<br />'; //     Пушкина

Использование trait'а

Trait содержит в себе * Свойства * firstname * middlename * lastname * gender * Методы * firstname($case) * middlename($case) * lastname($case), (*11)

require_once('path-to-lib/petrovich-php/Petrovich.php');
require_once('path-to-lib/petrovich-php/Trait/Petrovich.php');

class User {
    use Trait_Petrovich;
}

$user = new User();

$user->lastname = "Пушкин";
$user->firstname = "Александр";
$user->middlename = "Сергеевич";

$user->firstname(Petrovich::CASE_GENITIVE); // Пушкина
$user->lastname(Petrovich::CASE_GENITIVE);  // Александра
$user->middlename(Petrovich::CASE_GENITIVE);    // Сергеевича

Падежи

Названия суффиксов для методов образованы от английских названий соответствующих падежей. Полный список поддерживаемых падежей приведён в таблице ниже., (*12)

Суффикс метода Падеж Характеризующий вопрос
CASE_NOMENATIVE именительный Кто? Что?
CASE_GENITIVE родительный Кого? Чего?
CASE_DATIVE дательный Кому? Чему?
CASE_ACCUSATIVE винительный Кого? Что?
CASE_INSTRUMENTAL творительный Кем? Чем?
CASE_PREPOSITIONAL предложный О ком? О чём?

Пол

Метод Petrovich::detectGender возвращает пол, на основе отчества. Возвращаемое значение не зависит от пола, переданного в конструктор. Для полов определены следующие константы * GENDER_ANDROGYNOUS - пол не определен; * GENDER_MALE - мужской пол; * GENDER_FEMALE - женский пол., (*13)

The Versions

27/06 2014

dev-master

9999999-dev https://github.com/Topface/petrovich-php

An easy-to-use PHP Class to decline russian names.

  Sources   Download

MIT

The Requires

  • php >=5.3

 

by Grigory Parshikov MikeBazhenov

petrovich russian names declension