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: 11.749 ]
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 ?>
Classe para gerar calendário em PHP
Converte um texto em seu respectivo codigo binario
Micro-script confirmar exclusão
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (24)
Placamae Asus H510M-E Aceita Linux? [RESOLVIDO] (9)
erro ao clonar repo github (3)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba