Como pegar apenas uma parte da string com PHP

08/01/2018 16:00:19

Muitas vezes no nosso dia a dia precisamos pegar a penas uma parte da string ou palavra por exemplo: 1030XXX nesse caso sempre os 3 últimos dígitos são XXX e queremos apenas o que vem antes do XXX como fazer isso?

Vamos lá:

$string = "1030XXX"; 
$string = substr("$string", 0, 3);
echo "$string";

Como podemos ver no código acima substr ele pode pegar uma parte da string com você informado a posição de onde ele deve iniciar a pegar e o fim, no exemplo acima dizemos ao php que ele vai pegar o texto que está na variável $string e apenas armazena partir da posição informada que no exemplo foi da 0 a 4 nesse caso ele armazena apenas 4 caracteres, nesse exemplo ele vai sempre pegar 4 caractere pegando da primeira posição até a quarta posição.

No exemplo assim para que o sistema não peque os XXX a numeração tem que ser sempre composta por 4 número, mas e se nosso código mudar tipo 10XXX, 10205XXX, 1XXX como podemos fazer para que o nosso sistema em php naão pegue os XXX sabendo que eles estão sempre no final e sempre são 3 X.

Vamos lá:

$string = "103232XXX"; 
$conta = strlen($string);
$conta -= 3;
$string = substr("$string", 0, $conta);
echo "
$string";

Como podemos ver no código acima é fácil basta você contar quantos caractere tem a string com strlen, sabendo que os X são sempre 3, basta diminuir 3, por exemplo se a string tem 9 caracteres e eu sei que 3 são X então é só subtrair 3 de 9 então eu só preciso pegar os 6 primeiros caracteres. Agora como fazemos para pegar apenas os últimos caracteres é simples, basta substituir 0 por a quantidades de caracteres com valor negativo, exemplo para pegarmos apenas os XXX substituirmos 0 por -3 veja no código abaixo.

Vamos lá:

$string = "1030XXX"; 
$string = substr("$string", -3, 3);
echo "$string";

Avatar de KéciaPor: Kécia dia: 08/01/2018 16:00:19em: PHPpegar só as três primeiras letras de um nome php,Pegar só as três últimas letras de um nome php,pegar apenas uma parte da string com php - 2863 Visitas