Atualizado em 23 de Setembro de 2013

Remover Acentos com PHP

Olá pessoal,

Quem nunca teve problemas ao tentar retirar acentos de uma string que atire a primeira pedra!!! É por este motivo que neste post vou mostrar uma forma de como retirar acentos de uma string qualquer.

No exemplo vamos criar dois Arrays, um com todos os acentos e um com as letras sem acentos (ou símbolos, dependendo da sua aplicação), após isso basta usarmos o comando str_replace para remover o acento.

Vamos ver um exemplo:

<?php
$comAcentos = array('à', 'á', 'â', 'ã', 'ä', 'å', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', 'ù', 'ü', 'ú', 'ÿ', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', 'O', 'Ù', 'Ü', 'Ú');

$semAcentos = array('a', 'a', 'a', 'a', 'a', 'a', 'c', 'e', 'e', 'e', 'e', 'i', 'i', 'i', 'i', 'n', 'o', 'o', 'o', 'o', 'o', 'u', 'u', 'u', 'y', 'A', 'A', 'A', 'A', 'A', 'A', 'C', 'E', 'E', 'E', 'E', 'I', 'I', 'I', 'I', 'N', 'O', 'O', 'O', 'O', 'O', '0', 'U', 'U', 'U');

$stringExemplo = 'É vamos retirar a acentuação.';

echo str_replace($comAcentos, $semAcentos, $stringExemplo);
//Resultado: E vamos retirar a acentuacao.
?>

Caso falte algum acento basta acrescentá-lo aos dois arrays, só lembrando que deve ser na mesma posição (índice).

Outra informação importante é que no inicio deste post eu disse que esta é apenas uma das formar de fazer a remoção do acento é claro que existem outra e com técnicas diferentes.


Curta a nossa página



E isso aí pessoal, até a próxima.

Tags:  Arrays | Funções | PHP

Comentários

Sua foto do perfil

Bonfim Junior

25 de Fevereiro de 2014 - 08:10

Sua foto do perfil

Mauricio Programador

Olá Bonfim,

tem um ótimo exemplo de URL Amigavel neste link, clica e assiste lá tem todas as funções que você precisa para download também.

Abraço.

25 de Fevereiro de 2014 - 09:45

NEWSLETTER

Receba dicas de programação
em seu e-mail

TWITTER

Acompanhe tudo o que rola
com Mauricio Programador

NEWSLETTER