zelenin/slug

此包已被废弃,不再维护。未建议替代包。

生成缩略名库

1.1.0 2015-12-06 20:18 UTC

This package is not auto-updated.

Last update: 2018-09-18 19:03:36 UTC


README

查看 STRING

缩略名

生成缩略名的库使用DDD原则。

库使用转换器概念。您可以通过实现Transformer接口来编写新的转换器。内置转换器包括:

  • RawTransformer按原样使用值
  • IntlTransliterator按原样转换值(使用php-intl)
  • UrlifyTransformer清除非字母/数字字符
  • TemplateTransformer根据模板转换值

安装

Composer

推荐通过 Composer 安装此扩展。

运行以下命令之一:

php composer.phar require zelenin/slug "~1.1.0"

或添加以下内容到您的composer.json文件的require部分:

"zelenin/slug": "~1.1.0"

```json

使用方法

$string = 'Jeanne Françoise Julie Adélaïde Récamier';
$transformers = [
	new IntlTransliterateTransformer(),
	new UrlifyTransformer(),
	new TemplateTransformer('{id}-{slug}', ['{id}' => $model->id])
];
$slugifier = new DefaultSlugifier($transformers);
$slug = $slugifier->slugify($string); // '12-jeanne-francoise-julie-adelaide-recamier'

您可以设置一些选项

$string = 'Jeanne Françoise Julie Adélaïde Récamier';
$transformers = [
	new IntlTransliterateTransformer('Russian-Latin/BGN; Any-Latin; Latin-ASCII; NFD; [:Nonspacing Mark:] Remove; NFKC;'),
	new UrlifyTransformer('_', false),
	new TemplateTransformer('{id}-{slug}', ['{id}' => $model->id])
];
$slugifier = new DefaultSlugifier($transformers);
$slug = $slugifier->slugify($string);

作者

Aleksandr Zelenin,电子邮件: aleksandr@zelenin.me