0 Compartilhamentos 1749 Views 3 Comments

Formatação de nomes próprios em PHP

16 de junho de 2011

O intuito desta função é pegar um nome qualquer (nome de pessoa) e padronizá-lo, por exemplo:
o nome ESTEVÃO NORBERTO E SILVA ou EstEvÃo NORBERTO e SILVA ou estevão norberto e silva com esta função será formatado para Estevão Norberto e Silva.

É isso aí espero que ajudem.

Carregando...

Você pode se interessar

Por que eu decidi não migrar para o Windows 11 agora
Artigos
96 visualizações
Artigos
96 visualizações

Por que eu decidi não migrar para o Windows 11 agora

Carlos L. A. da Silva - 19 de outubro de 2021

O novo sistema operacional da Microsoft está entre nós, mas talvez não seja uma boa ideia pular de cabeça.

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)
Artigos
228 visualizações
Artigos
228 visualizações

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)

Carlos L. A. da Silva - 6 de outubro de 2021

V8 é o interpretador JavaScript, também chamado de máquina virtual Javascript, desenvolvido pela Google e utilizado em seu navegador Google Chrome. Com o peso de seus criadores e a quase onipresença do navegador, foi apenas uma questão de tempo para essa implementação do JavaScritp se tornar dominante no mercado. Entretanto, um bom desenvolvedor sabe que […]

Sir Clive Sinclair, o homem adiantado no tempo
Artigos
410 visualizações
Artigos
410 visualizações

Sir Clive Sinclair, o homem adiantado no tempo

Carlos L. A. da Silva - 18 de setembro de 2021

O inglês Clive Marles Sinclair nasceu de uma família de engenheiros. Seu avô foi engenheiro, assim como o seu pai. Com um talento natural pela Matemática e um forte interesse em eletrônica, ele se tornaria uma página importante da popularização da computação em diversas partes do mundo, construindo um legado que se perpetuará por anos […]

3 Responses

  1. Ola, fazendo uma pequena correção;

    Deve ser criado a variável $saida e definido em branco ou qualquer coisa antes do for.


    $saida=”;
    for ($i=0; $i < count($nome); $i++) {

    // Tratar cada palavra do nome
    if ($nome[$i] == "de" or $nome[$i] == "da" or $nome[$i] == "e" or $nome[$i] == "dos" or $nome[$i] == "do") {
    $saida .= $nome[$i].' '; // Se a palavra estiver dentro das complementares mostrar toda em minúsculo
    }else {
    $saida .= ucfirst($nome[$i]).' '; // Se for um nome, mostrar a primeira letra maiúscula
    }

    }
    "

    OBS: no IF você está concatenando a variável saida com um valor, más o php reclama que a variável saída não existe para concatenar com algo.

    Resposta
  2. Um pequeno adendo: adicionar $saida = trim($saida); para retirar o espaço em branco no final, ficando assim:

    function tratar_nome ($nome) {
    $saida = “”;
    $nome = strtolower($nome); // Converter o nome todo para minúsculo
    $nome = explode(” “, $nome); // Separa o nome por espaços
    for ($i=0; $i < count($nome); $i++) {

    // Tratar cada palavra do nome
    if ($nome[$i] == "de" or $nome[$i] == "da" or $nome[$i] == "e" or $nome[$i] == "dos" or $nome[$i] == "do") {
    $saida .= $nome[$i].' '; // Se a palavra estiver dentro das complementares mostrar toda em minúsculo
    }else {
    $saida .= ucfirst($nome[$i]).' '; // Se for um nome, mostrar a primeira letra maiúscula
    }

    }
    return $saida;
    }

    Resposta
  3. Para ficar um pouco mais limpo, ainda pode reduzir o tratamento if, ficando assim, aproveitando o código acima:

    function tratar_nome ($nome) {
    $saida = “”;
    $nome = strtolower($nome); // Converter o nome todo para minúsculo
    $nome = explode(” “, $nome); // Separa o nome por espaços
    for ($i=0; $i < count($nome); $i++) {

    // Tratar cada palavra do nome
    $array_de_tratamento = ["da", "e", "da", "dos", "do", "das"];
    if (in_array($nome[$i], $array_de_tratamento)) {
    $saida .= $nome[$i].' '; // Se a palavra estiver dentro das complementares mostrar toda em minúsculo
    }else {
    $saida .= ucfirst($nome[$i]).' '; // Se for um nome, mostrar a primeira letra maiúscula
    }

    }
    return trim($saida);
    }

    Resposta

Deixe um Comentário

Your email address will not be published.

Mais publicações

A cibersegurança por trás das vacinas
Artigos
508 visualizações
508 visualizações

A cibersegurança por trás das vacinas

Carlos L. A. da Silva - 7 de setembro de 2021
Top 25 comandos do Git
Artigos
647 visualizações
647 visualizações

Top 25 comandos do Git

Carlos L. A. da Silva - 28 de agosto de 2021
Dez anos de Kotlin: origens e futuro
Artigos
700 visualizações
700 visualizações

Dez anos de Kotlin: origens e futuro

Carlos L. A. da Silva - 20 de agosto de 2021