15 de maio de 2007PHP - Converter string para maiúscula ou minúscula com acentos
Ao decorrer de um projeto precisei transformar strings em maiúsculas ou minúsculas conforme ocasião e para isso o PHP fornece as funções abaixo:
strtolower - Converte uma string para minúsculas
strtoupper - Converte uma string para maiúsculas
ucfirst - Converte para maiúscula o primeiro caractere de uma string
ucwords -Converte para maiúsculas o primeiro caractere de cada palavra
Porém nossa língua portuguesa existem as preciosidades dos acentos, na qual o PHP não consegue converter nativamente. Então resolvi fazer uma função para elas, veja:
- // Função para transformar strings em Maiúscula ou Minúscula com acentos
- // $palavra = a string propriamente dita
- // $tp = tipo da conversão: 1 para maiúsculas e 0 para minúsculas
- function convertem($term, $tp) {
- if ($tp == "1") $palavra = strtr(strtoupper($term),"àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ","ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß");
- elseif ($tp == "0") $palavra = strtr(strtolower($term),"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß","àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ");
- return $palavra;
- }
- // Exemplo de Utilização - Maiúscula
- $exemplo1 = "notícias";
- echo convertem($exemplo1, 1);
- // Exemplo de Utilização - Minúscula
- $exemplo2 = "NOTÍCIAS";
- echo convertem($exemplo2, 0);
Bom, agora com esta função já da pra converter/transformar qualquer string que tenha caracteres acentuados em maiúscula ou minúscula. E não se esqueça, o seu comentário é o meu pagamento para continuar publicando minhas dicas e côdigos. ![]()


Olhaaaaaa, esse codigo me ajudou muito viu… ficava muito feio converter strings e perder o acento com isso…
parabens.. =]
[Responder]
já ouviu falar que esta função superou este impecilho em uma nova versão do php (não sei a partir de qual)… mas não tenho certeza quanto a isso… vou pesquisar
[Responder]
Muito legal! Valeu. Consegui resolver rapidamente os títulos de um site em Joomla!
title),”àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ”,”ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß”);?>
Obrigado.
[Responder]
Nota 10 !!! Caiu como uma luva para o que eu queria.
[Responder]
usei isso!
[Responder]
Valeu pela dica brother… Foi muito útil
[ =
[Responder]
Amém
[Responder]
Deus lhe abençoe, me ajudou também
eu te amo
[Responder]
Perfeito cara! Ajudou demais.
[Responder]
Diogão,
como atribui um valor NULL a uma variavel?
$variavel = NULL; não deu aqui.
[Responder]
muito bom, funcionou perfeitamente.
abraço.
[Responder]