PHPackages                             jackmartin/transliterate - 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. jackmartin/transliterate

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

jackmartin/transliterate
========================

Transliteration package

v2.0.3(5y ago)069MITPHPPHP &gt;=7.1

Since Feb 4Pushed 5y agoCompare

[ Source](https://github.com/martinjack/Transliterate)[ Packagist](https://packagist.org/packages/jackmartin/transliterate)[ RSS](/packages/jackmartin-transliterate/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (5)Versions (8)Used By (0)

Transliterate
-------------

[](#transliterate)

[![Latest Stable Version](https://camo.githubusercontent.com/77526f93da390f3e14bc765b87a6ce7ff9e1b903786c9cf6176090af254c50c1/68747470733a2f2f706f7365722e707567782e6f72672f6a61636b6d617274696e2f7472616e736c697465726174652f76)](//packagist.org/packages/jackmartin/transliterate) [![Total Downloads](https://camo.githubusercontent.com/cdf3ec74ba153361b94894e865afc7b20018239e9731120144afd0a0f27aa2c8/68747470733a2f2f706f7365722e707567782e6f72672f6a61636b6d617274696e2f7472616e736c697465726174652f646f776e6c6f616473)](//packagist.org/packages/jackmartin/transliterate) [![License](https://camo.githubusercontent.com/f7388685be3e06bb55db332c270b9b1d97ed65e9938f49f8fddcaa9ea2b8961a/68747470733a2f2f706f7365722e707567782e6f72672f6a61636b6d617274696e2f7472616e736c697465726174652f6c6963656e7365)](//packagist.org/packages/jackmartin/transliterate)

Небольшой пакет для транслитерации кириллицы с возможностью создания своих собственных карт транслитерации.

[![Code example](example.png)](example.png)

- [Предустановленные карты](#%D0%9F%D1%80%D0%B5%D0%B4%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5-%D0%BA%D0%B0%D1%80%D1%82%D1%8B)
- [Системные требования](#%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B5-%D1%82%D1%80%D0%B5%D0%B1%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
- [Установка](#%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0)
- [Конфигурация](#%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D1%8F)
- [Использование](#%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
- [Создание карт транслитерации](#%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BA%D0%B0%D1%80%D1%82-%D1%82%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8)
- [Создание трансформеров](#%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%84%D0%BE%D1%80%D0%BC%D0%B5%D1%80%D0%BE%D0%B2)

Предустановленные карты
-----------------------

[](#предустановленные-карты)

- Русский
    - Дефолтная
    - ГОСТ 7.79 2000
- Украинский
    - Национальная

Системные требования
--------------------

[](#системные-требования)

- laravel &gt;= 5.6
- ext-intl

Установка
---------

[](#установка)

```
composer require jackmartin/transliterate
```

Laravel начиная с версии *5.5* не нуждается в дополнительной конфигурации благодаря механизму Package Discovery.

Если вы не используте Package Discovery, необходимо зарегистрировать `Service Provider`, добавив его в массив `providers`, конфигурационного файла `app.php`.

```
ElForastero\Transliterate\ServiceProvider::class,
```

Если вы хотите использовать алиас, добавьте его в массив `facades` в `app.php`.

Рекомендую в качестве алиаса использовать `Transliterate`, чтобы избежать конфликтов с Transliterator классом из расширения Intl.

```
'Transliterate' => ElForastero\Transliterate\Facade::class,
```

Конфигурация
------------

[](#конфигурация)

Для копирования конфига `transliterate.php` в директорию `configs` выполните

```
> php artisan vendor:publish --provider="ElForastero\Transliterate\ServiceProvider"

```

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

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

Вы можете использовать фасад для транслитерации строк.

```
use Transliterate;

Transliterate::make('Двадцать тысяч льё под водой');
// "Dvadcat tisyach lyo pod vodoy"
```

Альтернативная карта транслитерации может быть передана вторым параметром.

```
use ElForastero\Transliterate\Transliterator;

$transliterator = new Transliterator(Map::LANG_RU, Map::GOST_7_79_2000);
$transliterator->make('Двадцать тысяч льё под водой');
// "Dvadcat` ty'syach l`yo pod vodoj"
```

Генерация URL
-------------

[](#генерация-url)

Метод `slugify` генерирует URL, убирая из строки все знаки препинания и заменяя пробелы на "-".

```
Transliterate::slugify('Съешь еще этих мягких французских булок, да выпей чаю!');
// sesh-eshhe-etih-myagkih-francuzskih-bulok-da-vipey-chayu
```

Создание карт транслитерации
----------------------------

[](#создание-карт-транслитерации)

Каждая карта представляет собой ассоциативный массив с символами подлежащими замене в качестве ключей, и значениями на которые они будут заменены.

Карта создается в виде отдельного файла с возвращаемым массивом:

```
// /resources/maps/uk/ukraine.php

return [
    'ї' => 'i',
    'і' => 'i',
    'є' => 'ie',
];
```

Добавьте путь к созданной карте в массив `maps`, конфига `transliterate.php`:

```
'uk' => [
    'ukraine' => dirname(__DIR__) . '/resources/maps/uk/ukraine.php',
]
```

После этого карту можно использовать.

```
$transliterator = new Transliterator('uk', 'ukraine');
$transliterator->make('Ваша транслітерація');
```

Создание трансформеров
----------------------

[](#создание-трансформеров)

Трансформеры - функции которые будут автоматически применены к результату транслитерации. Полезно если вам необходимо каждый раз производить одни и те же действия с транслитерируемой строкой. Регистрируется трансформер в массиве `transformers`.

Например, можно автоматечески убирать конечные пробелы.

```
ElForastero\Transliterate\Transformer::register(\Closure::fromCallable('trim')),
```

Или дополнительно приводить строки к нижнему регистру.

```
ElForastero\Transliterate\Transformer::register(\Closure::fromCallable('trim')),
ElForastero\Transliterate\Transformer::register(\Closure::fromCallable('strtolower')),
```

> Будьте внимательны, поскольку трансформеры применяются при каждом вызове `Transliterator::make`.

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 82.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 ~268 days

Recently: every ~303 days

Total

6

Last Release

2041d ago

Major Versions

1.1.0 → 2.0.02018-12-08

### Community

Maintainers

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

---

Top Contributors

[![ElForastero](https://avatars.githubusercontent.com/u/5102818?v=4)](https://github.com/ElForastero "ElForastero (38 commits)")[![martinjack](https://avatars.githubusercontent.com/u/11950689?v=4)](https://github.com/martinjack "martinjack (8 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/jackmartin-transliterate/health.svg)

```
[![Health](https://phpackages.com/badges/jackmartin-transliterate/health.svg)](https://phpackages.com/packages/jackmartin-transliterate)
```

###  Alternatives

[barryvdh/laravel-ide-helper

Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.

14.9k123.0M687](/packages/barryvdh-laravel-ide-helper)[orchestra/canvas

Code Generators for Laravel Applications and Packages

21017.2M158](/packages/orchestra-canvas)[illuminate/pipeline

The Illuminate Pipeline package.

9446.6M213](/packages/illuminate-pipeline)[illuminate/pagination

The Illuminate Pagination package.

10532.5M862](/packages/illuminate-pagination)[spatie/laravel-pjax

A pjax middleware for Laravel 5

513371.8k11](/packages/spatie-laravel-pjax)[spatie/laravel-mix-preload

Add preload and prefetch links based your Mix manifest

169176.0k2](/packages/spatie-laravel-mix-preload)

PHPackages © 2026

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