Função geraUrlLimpa() em PHP
setembro 21, 2009
/* função que gera uma texto limpo pra virar URL:
– limpa acentos e transforma em letra normal
– limpa cedilha e transforma em c normal, o mesmo com o ñ
– transforma espaços em hifen (-)
– tira caracteres invalidos
*/
function geraUrlLimpa($texto) {
$texto = html_entity_decode($texto); // desconvertendo do padrão entitie (tipo á para á)
$texto = strtolower($texto); // transformas os caracteres em caixa baixa
$replaces = array(
‘/[áàãâä]/’ => ‘a’,
‘/[ÂÀÁÄÃ]/’ => ‘A’,
‘/[éèêë]/’ => ‘e’,
‘/[íìîï]/’ => ‘i’,
‘/[óòõôö]/’ => ‘o’,
‘/[úùûü]/’ => ‘u’,
‘/[ç]/’ => ‘c’,
‘/[ñ]/’ => ‘n’,
‘/( )/’ => ‘-’,
‘/[^a-z0-9\-_]/’ => ”, // tirando outros caracteres invalidos
‘/_/’ => ‘-’,
‘/-+/’ => ‘-’ // substitui múltiplos espaços (hifens) por apenas um
);
$texto = preg_replace(array_keys($replaces), array_values($replaces), $texto);
return strtolower($texto);
}


