Converte para maiúsculas a primeira letra de cada palavra, resolvendo o problema de acentos
Publicado por Sérvulo dos Anjos Meneses (última atualização em 26/09/2014)
[ Hits: 12.173 ]
Homepage: www.megasam.com.br
A função em PHP resolve o problema de converter para maiúsculas o primeiro caractere de cada palavra, onde não conseguia converter quando iniciava com vogal com acento. Esta função resolve esse problema.
Melhorem o script e postem aqui.
<?php function converte($nome) { // Converte toda a string para minúscula $nome = strtr(strtolower($nome),"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÜÚÞß","àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ"); //Usamos a explode() para separar a string por palavras $palavra=explode(" ",$nome); // Percorremos por cada palavra for ($i=0; $i < count($palavra) ; $i++) { // Com o if elimine as palavras que NÃO poderão ter a primeira letra em maiúscula if ($palavra[$i] != "da" && $palavra[$i] != "de" && $palavra[$i] != "do" && $palavra[$i] != "das" && $palavra[$i] != "dos") { $palavra[$i] = ucwords($palavra[$i]);// ucwords - Converte para maiúsculas o primeiro caractere de cada palavra exceto as palavras que iniciarem com acento $primeira = substr( $palavra[$i], 0, 1);// Captura o primeiro caractere da palavra $resto = substr( $palavra[$i], 1, 100);// Captura do segundo caractere da palavra em diante //str_replace — Substitui todas as ocorrências da string de procura com a string de substituição //strtr — Traduz certos caracteres //Em seguida se a primeira letra da palavra tiver acento, será convertida para maiúscula com acento $primeira = str_replace($primeira,strtr($primeira,"àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ","ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÜÚÞß"),$primeira); // Junte a primeira letra convertida com o restante da palavra. $palavra[$i] = $primeira.$resto; } // Junte novamente as palavras em uma frase com as primeiras letras convertidas em maiúsculas. E com a acentuação correta. $nomeconvertido = $nomeconvertido." ".$palavra[$i]; } return $nomeconvertido; }; $nometeste = "ÍLDA JÚLIA DE ASSUNÇÃO DOS SANTOS"; echo "$nometeste"; //Exibir STRING ORIGINAL echo "<br>"; echo converte($nometeste); //Exibir STRING CONVERTIDA ?>
Converte um texto em seu respectivo codigo binario
Graficos 3D simples e configuraveis com PHP
Classe para gerar calendário em PHP
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Problema com nome composto e organização na tela do yad (0)
Formatando cartão de memoria que nao formata[AJUDA] (18)
Primeira vez utilizando Linux Ubuntu 22.04 e já tenho problemas… (5)
warsaw parou de funcionar após atualização do sistema (solução) (1)