Páginas

5 de abril de 2010

Função de geração slug

Ainda que o Doctrine tenha um behaviour que automaticamente gera slugs, por vezes é necessário uma função para criar uma slug, fica aqui uma exemplo:
function slugString($string, $replacement = '_')
{
  $aux = preg_quote($replacement, '/');
 
  $map = array(
    '/à|á|ã|â/' => 'a',
    '/è|é|ê|ẽ|ë/' => 'e',
    '/ì|í|î/' => 'i',
    '/ò|ó|ô|õ|ø/' => 'o',
    '/ù|ú|ũ|û/' => 'u',
    '/ç/' => 'c',
    '/ñ/' => 'n',
    '/ä|æ/' => 'ae',
    '/ö/' => 'oe',
    '/ü/' => 'ue',
    '/Ä/' => 'Ae',
    '/Ü/' => 'Ue',
    '/Ö/' => 'Oe',
    '/ß/' => 'ss',
    '/[^\w\s]/' => ' ',
    '/\\s+/' => $replacement
  );
 
  return preg_replace(array_keys($map), array_values($map), $string);
}
Retirada daqui.

2 comentários:

  1. Bom site, está me ajudando,
    falta um RSS, ehhehehe

    tem como ??

    Abs e continue postando
    Rodrigo

    ResponderExcluir
  2. Olá Rodrigo.

    O blog tem RSS em http://dicas-symfony.blogspot.com/atom.xml

    Obrigado pela mensagem :)

    ResponderExcluir