Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

swinguinha

[Resolvido] Retirar açentos de letras maiusculas

Recommended Posts

olá pessoal!! mais uma vez venho recorrer ao forum para solucionar um proplema...

estou transformando as minha url e urls amigaveis.. mais apareceu o seguinte..

 

eu converti todos os caracteres para minusculos e retirei os acentos so que algumas palavras não faz a conversão com resolver???

 

ex:

 

É Isso ai - ela devertia ficar "e-isso-ai" ... fica assim "É-isso-ai"

mais a vogal É não converte para minuscula e nem retira o acento.

 

segue a função

function limparString( $string ) {
   // Converte todos os caracteres para minusculo
   $string = strtolower($string);
   // Remove os acentos
   $string = eregi_replace('[aáàãâä]', 'a', $string);
   $string = eregi_replace('[eéèêë]', 'e', $string);
   $string = eregi_replace('[iíìîï]', 'i', $string);
   $string = eregi_replace('[oóòõôö]', 'o', $string);
   $string = eregi_replace('[uúùûü]', 'u', $string);
   // Remove o cedilha, o ñ e as virgulas
   $string = eregi_replace('[ç]', 'c', $string);
   $string = eregi_replace('[ñ]', 'n', $string);
$string = eregi_replace('[,]', '-', $string);
   // Substitui os espaços em brancos por traço
   $string = eregi_replace('( )', '-', $string);
// Substitui o & por e, asteriscos por traço
$string = eregi_replace('[&]', 'e', $string);
$string = eregi_replace('[*]', '-', $string);
   // Remove hifens duplos, aspas simples e barra
   $string = eregi_replace('--', '-', $string);
$string = eregi_replace("'", '', $string);
$string = eregi_replace('[/]', '', $string);
$string = eregi_replace('[()]', '', $string);
return $string;        
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz um teste

Coloque assim tbm

 

$string = eregi_replace('[EÉÈÊË]', 'E', $string);

 

beleza funcionou agora tem mais uma coisinha

 

o nº como coloco para sumir o º tentei e nao vai.

$string = eregi_replace('[nº]', '', $string);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posso dar uma sugestão? Depois de substituir as letras, o ñ e o ç, faça isso:

 

$string = eregi_replace('[^a-zA-Z0-9-]', '-', $string);
Isso vai substuir TUDO que não for a-z A-Z 0-9 e hifen (-) por um hifen.. ;)

 

Depois é só tirar os repetidos e bola pra frente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posso dar uma sugestão? Depois de substituir as letras, o ñ e o ç, faça isso:

 

$string = eregi_replace('[^a-zA-Z0-9-]', '-', $string);
Isso vai substuir TUDO que não for a-z A-Z 0-9 e hifen (-) por um hifen.. ;)

 

Depois é só tirar os repetidos e bola pra frente.

 

valeu pela dica ficou bem mais simples...

abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.