Função para remover acentuação de uma string
Publicado por Roberto Francisco 22/08/2003
[ Hits: 13.158 ]
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(); ?>
Formatar CPF e CNPJ para formato user friendly
Crivo de Eratóstenes Simples em PHP
Kernel ganha novos linters Rust e distros avançam com recursos de IA
Firewire resiste, Bcachefs sai: destaques Linux do dia
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como instalar Counter-Strike 1.6? (6)
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (14)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (0)