denismitr/translit

Russian-English Yandex transliteration package primarily for making slugs

Maintainers

👁 denismitr

Package info

github.com/denismitr/translit

pkg:composer/denismitr/translit

Statistics

Installs: 7 373

Dependents: 4

Suggesters: 0

Stars: 13

Open Issues: 0

v3.0.1 2020-11-02 09:33 UTC

Requires

  • php: >=7.2

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 97b91ceab59589a73446eb177000f3244388e3d5

  • Denis Mitrofanov <denis.mitr.woop@gmail.com>

This package is auto-updated.

Last update: 2026-06-29 01:19:30 UTC


README

Version

3.0 requires PHP >= 7.2

Author

Denis Mitrofanov denis.mitr@gmail.com

Installation

composer require denismitr/translit

Usage

 $translit = new \Denismitr\Translit\Translit();

 $slug = $translit->transform("Строка для транслитерации, по правилам Яндекс!");
 //stroka-dlya-transliteracii-po-pravilam-yandeksa

To define max length of the output do:

$slug = (new \Denismitr\Translit\Translit)->transform("очень длинный текст...", 10);
// ochen-dlin

You can provide your own translit implementation as long as it implements the \Denismitr\Translit\TranslitStrategy interface and inject it into the Translit class constructor, this way it will override the default behavior like so:

new \Denismitr\Translit\Translit(new YourTranslitStrategyImpl());

Run tests

composer test