Função para remover acentuação de uma string
Publicado por Roberto Francisco 22/08/2003
[ Hits: 13.127 ]
Função que ajuda na programação de um sistema de busca. Aceito colaboração de melhoria.
<?php /******************************************************************************* @CRIAÇÃO.....: 21/08/2003 @AUTOR.......: BobFrank <rsfranc@yahoo.com.br> @LINGUAGEM...: PHP @VERSÃO......: 4.0 @OBJETO......: Remover acentos de string. @NOME FÍSICO.: strSemAcentos.php @FUNÇÃO......: Recebe string, modo opcional. Retorna alterada, mesma ou nada. @STATUS......: [] Construção, [X] Operação, [] Manutenção, [] Fora de uso ******************************************************************************** @MANUTENÇÕES ------------- @DATA........: @PROGRAMADOR.: @DESCRIÇÃO...: @TIPO........: [] Correção, []Melhoria, []Integração @MOTIVO......: ******************************************************************************** */ function strSemAcentos($string="", $mesma=1) { if($string != "") { $com_acento = "à á â ã ä è é ê ë ì í î ï ò ó ô õ ö ù ú û ü À Á Â Ã Ä È É Ê Ë Ì Í Î Ò Ó Ô Õ Ö Ù Ú Û Ü ç Ç ñ Ñ"; $sem_acento = "a a a a a e e e e i i i i o o o o o u u u u A A A A A E E E E I I I O O O O O U U U U c C n N"; $c = explode(' ',$com_acento); $s = explode(' ',$sem_acento); $i=0; foreach($c as $letra) { if(ereg($letra, $string)) { $pattern[] = $letra; $replacement[] = $s[$i]; } $i=$i+1; } if(isset($pattern)) { $i=0; foreach($pattern as $letra) { $string = eregi_replace($letra, $replacement[$i], $string); $i=$i+1; } return $string; # retorna string alterada } if ($mesma != 0) { return $string; # retorna a mesma string se nada mudou } } return ""; # sem mudança retorna nada } // // Exemplos: print "<br>strSemAcentos('É mamão com açucar!'); = " .strSemAcentos("É mamão com açucar!"); print "<br>strSemAcentos('Teste sem acentos'); = " .strSemAcentos("Teste sem acentos"); print "<br>strSemAcentos('Teste sem acentos',0); = " .strSemAcentos("Teste sem acentos",0); print "<br>strSemAcentos(); = " .strSemAcentos(); ?>
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Debian 13 "trixie&... lançado! (44)
Rust é o "C da nossa geração"? (3)
Gerenciador de arquivos é finalizado ao abrir pasta específica (2)