PHPackages                             awkaw/petrovich-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. awkaw/petrovich-php

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

awkaw/petrovich-php
===================

Fork of original petrovich/petrovich-php repository, with testing, PHP7 support and minor improvements

1.4.0(6y ago)01MITPHPPHP ^7.2.9

Since May 18Pushed 3y agoCompare

[ Source](https://github.com/awkaw/petrovich-php)[ Packagist](https://packagist.org/packages/awkaw/petrovich-php)[ RSS](/packages/awkaw-petrovich-php/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (5)Versions (9)Used By (0)

Petrovich
=========

[](#petrovich)

[![Petrovich](https://camo.githubusercontent.com/e4a8f17e5d5dc26c86b5321aaf9a7491438714720d27ffd16bc9d82c7ea7eccd/68747470733a2f2f7261772e6769746875622e636f6d2f726f637363692f706574726f766963682f6d61737465722f706574726f766963682e706e67)](https://camo.githubusercontent.com/e4a8f17e5d5dc26c86b5321aaf9a7491438714720d27ffd16bc9d82c7ea7eccd/68747470733a2f2f7261772e6769746875622e636f6d2f726f637363692f706574726f766963682f6d61737465722f706574726f766963682e706e67)

[![Build Status](https://camo.githubusercontent.com/7b33f54b227496ac2077401c82edda6507a5a846d007cdb9ee9627b25a120a36/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f737461746963616c6c2f706574726f766963682d7068702e7376673f6272616e63683d6d6173746572)](https://secure.travis-ci.org/staticall/petrovich-php) [![Coverage Status](https://camo.githubusercontent.com/3c5911b7776e36c8a5dd0368b307daa80b5902d7da51535a16b8465b240d6a91/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f737461746963616c6c2f706574726f766963682d7068702f62616467652e7376673f6272616e63683d6d617374657226736572766963653d676974687562)](https://coveralls.io/github/staticall/petrovich-php?branch=master) [![Latest Stable Version](https://camo.githubusercontent.com/d69bf39e83a7d46ab2f43cf628221cc325dacd26283fa38d65545273f93f108d/68747470733a2f2f706f7365722e707567782e6f72672f737461746963616c6c2f706574726f766963682d7068702f762f737461626c65)](https://packagist.org/packages/awkaw/petrovich-php) [![Code Quality](https://camo.githubusercontent.com/194ba8ac4651dec7efb881991936f7ba0780cc6ea3ce0f3aa03afbb162d79aca/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f737461746963616c6c2f706574726f766963682d7068702f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/staticall/petrovich-php/?branch=master) [![Infection MSI](https://camo.githubusercontent.com/41bd373a54f093a34ea171ce78dc3969852bfa4298ce5647d9eef080325777f5/68747470733a2f2f62616467652e737472796b65722d6d757461746f722e696f2f6769746875622e636f6d2f737461746963616c6c2f706574726f766963682d7068702f6d6173746572)](https://infection.github.io)

Склонение падежей русских имён, фамилий и отчеств. Портированная версия с [Ruby](https://github.com/petrovich/petrovich-ruby) на PHP, использует [официальные правила](https://github.com/petrovich/petrovich-rules)

Установка и использование
-------------------------

[](#установка-и-использование)

Для работы требуется PHP &gt;= 7.2.9

Для установке, добавьте данный пакет в зависимости *Composer*, либо вручную, либо используя следующую команду:

`composer require awkaw/petrovich-php`

### Пример использования

[](#пример-использования)

Пример склонения отдельно имени, фамилии и отчества:

```
mb_internal_encoding('UTF-8');

require_once 'path-to-vendor/autoload.php';

$petrovich = new Staticall\Petrovich(Staticall\Petrovich\Loader::load('path-to-vendor/cloudloyalty/petrovich-rules/rules.json'));

// Родительный падеж
$lastNameGenitive   = $petrovich->inflectLastName('Пушкин', Staticall\Petrovich\Ruleset::CASE_GENITIVE, Staticall\Petrovich\Ruleset::GENDER_MALE); // Пушкина
$firstNameGenitive  = $petrovich->inflectFirstName('Александр', Staticall\Petrovich\Ruleset::CASE_GENITIVE, Petrovich\Ruleset::GENDER_MALE); // Александра
$middleNameGenitive = $petrovich->inflectMiddleName('Сергеевич', Staticall\Petrovich\Ruleset::CASE_GENITIVE, Staticall\Petrovich\Ruleset::GENDER_MALE); // Сергеевича
```

Пример склонения одновременно имени, фамилии и отчества:

```
mb_internal_encoding('UTF-8');

require_once 'path-to-vendor/autoload.php';

$petrovich = new Staticall\Petrovich(Staticall\Petrovich\Loader::load('path-to-vendor/cloudloyalty/petrovich-rules/rules.json'));

// Родительный падеж
// Важно! На данный момент, такой порядок обязателен
$fullNameGenitive = $petrovich->inflectFullName('Пушкин Александр Сергеевич', Staticall\Petrovich\Ruleset::CASE_GENITIVE, Staticall\Petrovich\Ruleset::GENDER_MALE); // Пушкина Александра Сергеевича
```

Как можно определить пол по отчеству:

```
mb_internal_encoding('UTF-8');

require_once 'path-to-vendor/autoload.php';

echo Staticall\Petrovich::detectGender('Петровна'); // Petrovich::GENDER_FEMALE
```

Версионирование
---------------

[](#версионирование)

При версионировании, следуем заветам [SemVer](http://semver.org/). Для просмотра доступных версий, взгляните на [теги этого репозитория](https://github.com/staticall/petrovich-php/tags).

Авторы
------

[](#авторы)

Все [контрибьюторы оригинального проекта](https://github.com/petrovich/petrovich-php/contributors).

А также все [контрибьюторы этого форка](https://github.com/staticall/petrovich-php/contributors).

Лицензия
--------

[](#лицензия)

Проект использует лицензию MIT - для просмотра лицензии, посмотрите файл [LICENSE.md](LICENSE.md)

Благодарности
-------------

[](#благодарности)

- [petrovich/petrovich-rules](https://github.com/petrovich/petrovich-rules)
- [cloudloyalty/petrovich-rules](https://github.com/cloudloyalty/petrovich-rules)
- [symfony/yaml](https://github.com/symfony/yaml)
- [infection/infection](https://github.com/infection/infection)
- [sebastianbergmann/phpunit](https://github.com/sebastianbergmann/phpunit)
- [squizlabs/php\_codesniffer](https://github.com/squizlabs/php_codesniffer)
- [Coveralls](https://coveralls.io/)
- [Travis CI](https://travis-ci.org/)

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity1

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 50.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~65 days

Recently: every ~82 days

Total

6

Last Release

2273d ago

PHP version history (2 changes)1.0.0PHP ^7.1.3

1.3.0PHP ^7.2.9

### Community

Maintainers

![](https://www.gravatar.com/avatar/7da843fb7cd58d75978641f392189c22d0eb0d930fb6b9233c4d8d3dff7fc060?d=identicon)[awkaw](/maintainers/awkaw)

---

Top Contributors

[![staticall](https://avatars.githubusercontent.com/u/611107?v=4)](https://github.com/staticall "staticall (45 commits)")[![parshikov](https://avatars.githubusercontent.com/u/983028?v=4)](https://github.com/parshikov "parshikov (29 commits)")[![MikeBazhenov](https://avatars.githubusercontent.com/u/1553430?v=4)](https://github.com/MikeBazhenov "MikeBazhenov (9 commits)")[![awkaw](https://avatars.githubusercontent.com/u/16372243?v=4)](https://github.com/awkaw "awkaw (4 commits)")[![5818959](https://avatars.githubusercontent.com/u/1871115?v=4)](https://github.com/5818959 "5818959 (1 commits)")[![nixprosoft](https://avatars.githubusercontent.com/u/5313478?v=4)](https://github.com/nixprosoft "nixprosoft (1 commits)")

---

Tags

inflectionrussianpetrovichdeclination

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/awkaw-petrovich-php/health.svg)

```
[![Health](https://phpackages.com/badges/awkaw-petrovich-php/health.svg)](https://phpackages.com/packages/awkaw-petrovich-php)
```

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

103519.9k53](/packages/friendsoftypo3-content-blocks)[wapmorgan/morphos

A morphological solution for Russian and English language written completely in PHP. Provides classes to inflect personal names, geographical names, decline and pluralize nouns, generate cardinal and ordinal numerals, spell out money amounts and time.

8351.4M7](/packages/wapmorgan-morphos)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1189.8k](/packages/rcsofttech-audit-trail-bundle)[altis/local-server

Local Server module for Altis

18221.6k3](/packages/altis-local-server)[wapmorgan/yii2-inflection

Inflection extension for Yii2. Support for English / Russian languages to inflect words / names / numbers / money / date&amp;time.

33120.9k](/packages/wapmorgan-yii2-inflection)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
