Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Emerson Placido

Preposiçoes em php

Recommended Posts

Bom Dia tenho esta função abaixo e gostaria de limpar as preposições do Nome do usuario segue um exemplo

 

 

<?

$Nome = "MARIA DAS GRAÇAS DE ALMEIDA";
$Nome_pronto = str_replace("DAS","",$Nome);
echo $Nome_pronto = strtolower($Nome_pronto)."<BR>";

$nome = explode(" ", $Nome);
$primeiro_nome = $nome[0];

$Nome = explode(' ',$Nome_pronto);
$Iniciais = '';
for($i=0;$i<count($Nome);$i++)
  $Iniciais .= substr($Nome[$i], 0, 1) . '';
$Iniciais = trim($Iniciais);

$Iniciais = $Iniciais."@XXX.XX.br";

echo $emailfinal = strtolower ($primeiro_nome.".".$Iniciais);

maria.mgda@xxx.xx.br
?>

 

Quero que limpa as preposições DAS e DE e as outras e claro se ouver DO, DE, DAS e o resultado em vez de:

 

 

maria.mgda@xxx.xx.br

 

seja

 

maria.mga@xxx.xx.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agradeço a resposta amigo esta quase o problema e por exemplo OLIVEIRA fica OLIVIRA

 

 

<?php
$search = array("DAS", "DE", "DOS", "E");
$replace = array("", "", "","");
$subject = "MARIA DAS GRAÇAS DE OLIVEIRA DOS SANTOS E CARDOSO";
echo str_replace($search, $replace, $subject). "<br>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites
$str = preg_replace('@\b(de|da|das|dos|do)\b@i', '', $nome);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido ... .

<?php
$search = array(" DAS ", " DE ", " DOS ", " E ");
$replace = array(" ", " ", " "," ");
$subject = "MARIA DAS GRAÇAS DE OLIVEIRA DOS SANTOS E CARDOSO";
echo str_replace($search, $replace, $subject). "<br>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resultado Final caso alguem queira melhorar fique a vontade.. o forum e para isso tambem e obrigado a todos pelas dicas ..

 

<?php
$search = array(" DAS ", " DE ", " DOS ", " E ");
$replace = array(" ", " ", " "," ");
$Nome = "MARIA DAS GRAÇAS DE OLIVEIRA DOS SANTOS E CARDOSO";
echo $nomesemp = str_replace($search, $replace, $Nome). "<br>";

echo $Nomeminusculo = strtolower($nomesemp)."<BR>";

$Nomeminusculow = explode(" ", $Nomeminusculo);
$primeiro_nome = $Nomeminusculow[0];

$NomeP = explode(' ',$Nomeminusculo);
$Iniciais = '';
for($i=0;$i<count($NomeP);$i++)
  $Iniciais .= substr($NomeP[$i], 0, 1) . '';
$Iniciais = trim($Iniciais);

$Iniciais = $Iniciais."@XXX.XX.br";

echo $emailfinal = strtolower ($primeiro_nome.".".$Iniciais);



?>

Resultado: maria.mgosc@xxx.xx.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.