abeliani/translated-slug-helper
最新稳定版本:v1.0.0
Composer 安装命令:
composer require abeliani/translated-slug-helper
包简介
Helps to get a valid slug translated or transliterated by a driver collection
README 文档
README
The package uses libraries StringTranslator and SlugHelper.
Installation
composer require abeliani/translated-slug-helper
Examples
Example of offline driver
Blog posts often require a slug to generate a url. We can use a transliteration driver which simply transliteration the symbol table for example: u-у and vice versa.
$slug = new TranslatedSlugHelper( new Settings('ru'), new TranslatedBy(Translit::class) ); print $slug->from('Привет мир!', 'en'); // privet-mir
Example of online driver
Online drivers perform translate a text.
$slug = new TranslatedSlugHelper( new Settings('ru', ['a', 'an']), // to remove words from slug (eg. a, an) we can pass them by array new TranslatedBy(MyMemory::class, ['apiKey' => 'someapikey']) ); print $slug->from('Привет мир!', 'en'); // hello-world
Example of driver chain
An online driver will suddenly be unavailable (for example), in this case we can pass a string for translation from one driver to another along the chain.
$chain = [ new TranslatedBy(MyMemory::class, ['apiKey' => 'someapikey']), new TranslatedBy(Translit::class), ]; $slug = new TranslatedSlugHelper( new Settings('ru'), ...$chain, ); print $slug->from('Привет мир!', 'en'); // if MyMemory service is available: hello-world | otherwise by transilt driver: privet-mir
If you need to change the word separator. you can pass it through settings object
// Passing new divider + new Settings('ru', [], '+')
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-05-08