如何在symfony2中创建slugify?

gas*_*ina 6 php slug symfony

我已经开始使用symfony2了,我发现了symfony 1.4中存在的一些函数,如slugify.我需要这个,以改善furl.

Abd*_*aye 9

如果你有php-intl:

/**
 * Transform (e.g. "Hello World") into a slug (e.g. "hello-world").
 *
 * @param string $string
 *
 * @return string
 */
public function slugify($string)
{
    $rule = 'NFD; [:Nonspacing Mark:] Remove; NFC';
    $transliterator = \Transliterator::create($rule);
    $string = $transliterator->transliterate($string);

    return preg_replace(
        '/[^a-z0-9]/',
        '-',
        strtolower(trim(strip_tags($string)))
    );
}
Run Code Online (Sandbox Code Playgroud)

否则,看看学说扩展

  • 没有足够的人知道将非ascii输入(如带有重音符号或æ应该转换为ae等的法语)转换为ascii是一个长期以unicode标准方式解决的问题 (3认同)

Nic*_*ich 5

使用 l3ppard 的sluggable 扩展 (GitHub存储库)...

... 或 KnpLabs sluggable 行为(GitHub存储库)。