Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal do fórum, boa tarde.
Gostaria de uma ajuda com um script que estou montando.
Preciso montar um login com o nome do cliente, sempre com o nome e o último sobrenome, por exemplo:
Paulo Pereira de Souza ficaria "paulo.souza".
Mas tenho um problema, depois de montar o login faço um select no banco e vejo se já existe um login criado com esse nome, se existir preciso criar um novo com o sobrenome anterior ao último.
Mas o anterior a "Souza" é o "de".
Como posso pegar sempre a última ocorrência da string e depois, se necessário "ir voltando" desconsiderando o "de", "da", "e" e por ai vai.
Fiz algumas coisas mais travei nisso.
$NomeUsuario = $_SESSION['nomeUsuario'];
$Partes = explode(" ", $NomeUsuario);
$String = $Partes[0].".".$Partes[1];
$Login = strtolower($String);
Até tentei adaptar um código que achei no Google, vejam:
// Até tentei usar um exemplo que achei no Google
$array=explode("123",$string);
$n_palavras=count($array);
for($i=0 ; $i < $n_palavras ; $i++ ){
print "$array[$i] \n";
}Se puderem me ajudar, agradeço.
Valeu e fiquem na paz.
Olá Andrew Marques, obrigado por responder.
Sim, entendi a sua colocação, como posso fazer isso tudo dinamicamente?
Valeu e fique na paz.
E se o nome da pessoa for Paulo de Souza?
Se já existisse paulo.souza no banco o que você faria? Não existe um sobrenome pra isso.
Acho que o mais correto, caso não exista um outro sobrenome, como o próprio Facebook usa, depois de verificar se todas as formas de colocar o nome da pessoa, caso não consiga, colocar um numeral na frente do nome do usuário, indicando qual paulo.souza é, tipo paulo.souza.2.
Foi só uma dica.
Olá Gabriel Jacinto, valeu pela dica cara, não tinha pensado nisso, obrigado.
Bom, pelo que vi você já está utilizando o explode para separar o nome... Até aí blz!
Acontece que, você precisa verificar se o nome ou sobrenome tem mais do que dois caracteres, para evitar os "de", "do", etc..
Então só utilizará palavras maiores...