Atualizado em 11 de Março de 2013

Como passar texto com Acento para Maiúsculas PHP

Como vimos nos posts de como colocar a Primeira letra maiúscula e Como passar texto com Acento para Minúsculo, também podemos passar um texto para maiúsculo através dos comandos strtoupper e mb_strtoupper, que converte o texto para maiúscula já com o acento correto.

Vamos ver o exemplo com os dois comandos. Vamos lá:

Comando strtoupper


Este comando converte o texto para maiúscula, porém, se o texto estiver com acento e dentro de um HTML com charset a conversão não sai corretamente. Veja o exemplo:

<?php
echo strtoupper('transformando o texto para maiúsculo'); //Resultado: TRANSFORMANDO O TEXTO PARA MAIÚSCULO
?>

Comando mb_strtoupper


Este comando vem para corrigir o erro do comando anterior, caso esteja dentro do HTML com charset informado. Neste comando precisamos informar qual charset esta corrente no HTML.

Vamos ao exemplo:

<?php
echo mb_strtoupper('transformando o texto para maiúsculo', 'UTF-8'); //Resultado: TRANSFORMANDO O TEXTO PARA MAIÚSCULO
?>

IMPORTANTE: Para que este comando funcione o servidor de hospedagem tem que conter o pacote mbstring instalado ou ativado.

Veja também: Transformar Primeira letra maiúscula e Como passar texto com Acento para Minúsculo.

Gostou do post, continue por dentro das dicas de programação!!! Assine a newsletter.


Até a próxima pessoal.

Tags:  Comandos PHP | PHP

Comentários

Sua foto do perfil

Artur

E aí, Maurício. Tentei resolver isso por setlocale(), mas não deu certo. Valeu pela solução. Falou!

13 de Novembro de 2014 - 11:01

NEWSLETTER

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

TWITTER

Acompanhe tudo o que rola
com Mauricio Programador

NEWSLETTER