PHPackages                             andrewdanilov/php-lingua-stem-ru - 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. andrewdanilov/php-lingua-stem-ru

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

andrewdanilov/php-lingua-stem-ru
================================

Стеммер Портера. Извлечение корня из русского слова, без словаря.

1.0.0(5y ago)2311↓25%MITPHPPHP &gt;=5.6.0

Since Dec 6Pushed 5y agoCompare

[ Source](https://github.com/AndrewDanilov/php-lingua-stem-ru)[ Packagist](https://packagist.org/packages/andrewdanilov/php-lingua-stem-ru)[ RSS](/packages/andrewdanilov-php-lingua-stem-ru/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

Стеммер Портера
===============

[](#стеммер-портера)

Извлечение корня из русского слова, без словаря.

Стеммер Портера — алгоритм стемминга, опубликованный Мартином Портером в 1980 году. Оригинальная версия стеммера была предназначена для английского языка. Впоследствии Мартин создал проект «Snowball» и, используя основную идею алгоритма, написал стеммеры для распространённых индоевропейских языков, в том числе для русского.

Алгоритм не использует морфологический словарь, а только применяя последовательно ряд правил, отсекает окончания и суффиксы, основываясь на особенностях языка, в связи с чем работает быстро, но не всегда безошибочно.

Установка через композер:
-------------------------

[](#установка-через-композер)

```
composer require andrewdanilov/php-lingua-stem-ru "~1.0.0"

```

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

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

```
$stemmer = new LinguaStemRu();
echo $stemmer->stem_word('Автомобиль') . "";
echo $stemmer->stem_word('Автомобилем') . "";
echo $stemmer->stem_word('Автомобиля') . "";
```

В результате получим три раза слово **автомобил**.

```
$stemmer = new LinguaStemRu();
echo $stemmer->stem_text('Любовь к Родине – это очень сильное чувство.');
```

Получим:

`любов к родин – это очен сильн чувство.`

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 65% 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

Unknown

Total

1

Last Release

1990d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ec54b9a17d56bc1ccf0be4d4d91269a020986e86ac0ba407906391912cb17ca4?d=identicon)[AndrewDanilov](/maintainers/AndrewDanilov)

---

Top Contributors

[![ladamalina](https://avatars.githubusercontent.com/u/2093425?v=4)](https://github.com/ladamalina "ladamalina (13 commits)")[![sheershoff](https://avatars.githubusercontent.com/u/1510318?v=4)](https://github.com/sheershoff "sheershoff (7 commits)")

### Embed Badge

![Health badge](/badges/andrewdanilov-php-lingua-stem-ru/health.svg)

```
[![Health](https://phpackages.com/badges/andrewdanilov-php-lingua-stem-ru/health.svg)](https://phpackages.com/packages/andrewdanilov-php-lingua-stem-ru)
```

###  Alternatives

[openbuildings/monetary

Useful tool for formatting and converting currencies

10207.6k1](/packages/openbuildings-monetary)[saeedvaziry/ip2location

IP to Location database

322.2k](/packages/saeedvaziry-ip2location)

PHPackages © 2026

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