PHP: Transformando em maiúscula a primeira letra de uma palavra
Olá pessoal! Entrando com mais um post bacana.
Uma função bem útil pra quem trabalha com formulários de cadastro, contendo nome, endereço etc.
Independente da forma como você grava os dados no banco, seja tudo minúsculo ou tudo maiúsculo, a função pega o valor passado e coloca, somente, a primeira letra em maiúsculo.
Colaboração: Reuryky B. Silva
<? function primeiraLetraMaiuscula($nome){ $nome_array = explode(" ", $nome); $count = 0; $indice = count($nome_array); while ($count < $indice) { $preposição = $nome_array[$count]; if ($preposição == "da" or $preposição == "de" or $preposição == "do" or $preposição == "das" or $preposição == "dos"){ $nome_array[$count] = $nome_array[$count]; }else{ $nome_array[$count] = ucfirst(strtolower($nome_array[$count])); } $count += 1; } $resultado = implode(" ",$nome_array); return $resultado; } $nome = "linha de comando"; echo primeiraLetraMaiuscula($nome); ?> |
Atualização:
Compartilho com vocês uma solução discutida no google groups “php-brasil”.
<?php function capitalizeNomeProprio($nome){ $partesNome = explode(" ", $nome); $exclude = array('da', 'das', 'de', 'do', 'dos', 'e'); $nomeCapitalizado = ''; foreach ($partesNome as $parte) { if (in_array(strtolower($parte), $exclude)) { $parte = strtolower($parte); } else { $parte = ucfirst($parte); } $nomeCapitalizado .= $parte . " "; } return trim($nomeCapitalizado); } $nome = "linha de comando"; echo capitalizeNomeProprio($nome); ?> |
Resultado:
Linha de Comando
Seja você também um colaborador do linhadecomando.com
Até a próxima!
belo tutorial linhadecomando parabéns