O exemplo abaixo é utilizado para separar o nome do sobrenome dentro da mesma string muito utilizado em diversas situações em PHP, como por exemplo, mostrar apenas o nome do usuário logado, sem a necessidade de mostrar o nome completo.
<?php
$nomeCompleto = 'Fábio Corrêa da Silva';
echo 'Nome completo: ' . $nomeCompleto . '<br>';
$primeiroNome = substr($nomeCompleto, 0, strpos($nomeCompleto, ' '));
$sobrenome = trim(str_replace($primeiroNome, "", $nomeCompleto));
echo 'Nome: '. $primeiroNome;
echo '<br>';
echo 'Sobrenome: '. $sobrenome;
?>
A impressão do código acima será:
Nome completo: Fábio Corrêa da SilvaA função substr() remove parte de uma string, ela possui 3 parâmetros, o primeiro é a string que contém todos os caracteres, o segundo é um valor inteiro referente à posição inicial da string resultante, e o terceito parâmetro (não obrigatório) outro valor inteiro que será o ponto de exclusão da string resultante.
Neste caso no terceiro parâmetro foi usada a função strpos() que possui dois parâmetros, o primeiro é a string completa e o segundo uma string que será encontrada na string completa, aqui a função retorna um valor inteiro referente à string encontrada, no nosso exemplo o valor (5), pois o "espaço em branco" está na quinta posição na string "$nomeCompleto".
Com isso temos na variável "$nome" a string 'Fábio', referente ao resultado da função "substr($nomeCompleto, 0, 5)".
Para o sobrenome foi utilizada a função str_replace() ela possui 3 parâmetros, o primeiro será a string procurada, o segundo a string que será substituída e o terceiro a string que será pesquisada. Então fica assim: procurar a string Fábio, substituir pela string espaço nulo na string Fábio Corrêa da Silva.
Porém o que resultou foi a string ' Corrêa da Silva', antes do Corrêa existe um espaço em branco, então para isso que foi utilizada a função trim(), que é responsável em remover os espaços em branco antes e depois de uma string.