Como obter parte de um texto com PHP - Manipulação de Strings



Neste tutorial vamos mostrar como obter partes de um texto usando PHP. A linguagem PHP possui algumas funções desenvolvidas para facilitar manipulação de textos, tais como: substr() e strstr(). Veja a seguir como utilizar cada uma destas funções.

Nota do Autor: Leia também o tutorial Como dividir strings em PHP (separe e-mails, urls, textos, tags...) onde mostramos como dividir uma string através da função explode()Como excluir o primeiro e o último caractere de uma string em PHP que utiliza as funções strrchr() e substr() novamente.

Usando a função substr() para obter parte de um texto

1. A função substr() retorna parte de um texto, onde:

substr(texto, posição inicial, comprimento)
  • texto = string que se quer obter uma parte;
  • posição inicial = posição onde se deseja iniciar a parte a ser retornada;
  • comprimento = comprimento em caracteres da parte a ser retornada.

Veja o exemplo abaixo:

<?php

$text = "O perigo de verdade não é que computadores passem a pensar como humanos, mas sim que
humanos passem a pensar como computadores";
    
$result = substr($text, 0, 20); //posição inicial = 0, comprimento = 20
 
echo $result;

Veja o resultado abaixo onde obtivemos uma parte da string $text, com início na posição 0 e comprimento de 20 caracteres:

😀 Para verificar o código acima, teste: Squids Editor PHP. Clique no botão [Run] para ver o resultado.

2. Podemos obter o comprimento da parte que desejamos retornar utilizando a função strpos() que retorna a posição da primeira ocorrência de uma string. Portanto, podemos utilizar a função strpos() para definirmos a posição que determinará o comprimento da parte a ser retornada. Veja o exemplo abaixo:

<?php

$text = "O perigo de verdade não é que computadores passem a pensar como humanos, mas sim que
humanos passem a pensar como computadores";
    
$length = strpos($text,"não é que"); // posição onde inicia a string "não é que" = 20
 
$result = substr($text, 0, $length); //posição inicial = 0, comprimento = 20
 
echo $result;

 Observe que o resultado é o mesmo do exemplo anterior, pois $length será igual a 20.

😀 Para verificar o código acima, teste: Squids Editor PHP. Clique no botão [Run] para ver o resultado.

Usando a função substr() para obter a parte final do texto

1. Podemos retornar a parte final de um texto usando a função substr(), onde:

substr(texto, posição inicial)

  • texto = string que se quer obter uma parte;
  • posição inicial = posição do texto onde se deve iniciar a parte a ser retornada.

Veja o exemplo abaixo:

<?php

$text = "O perigo de verdade não é que computadores passem a pensar como humanos, mas sim que
humanos passem a pensar como computadores";
    
$position = strpos($text,"não é que"); // posição onde inicia a string "não é que" = 20
 
$result = substr($text, $position); //posição inicial = 0, comprimento = 20
 
echo $result;

Veja o resultado abaixo:

😀 Para verificar o código acima, teste: Squids Editor PHP. Clique no botão [Run] para ver o resultado.

Usando a função strstr() para obter parte inicial de um texto

1. A função strstr() retorna parte de um texto após encontrar a primeira ocorrência, onde:

strstr(texto, primeira ocorrência, true)

  • texto = string que se quer obter uma parte;
  • primeira ocorrência = primeira ocorrência da string encontrada no texto;
  • true = se "true" a função irá retornará a parte inicial do texto até a string encontrada

Veja o exemplo abaixo:

<?php

$text = "O perigo de verdade não é que computadores passem a pensar como humanos, mas sim que
humanos passem a pensar como computadores";
    
$result = strstr($text, "não é que", true);
 
echo $result;

Veja o resultado abaixo onde obtivemos uma a parte inicial $text:

😀 Para verificar o código acima, teste: Squids Editor PHP. Clique no botão [Run] para ver o resultado.

Usando a função strstr() para obter parte final de um texto

1. A função strstr() retorna parte final de um texto após encontrar a primeira ocorrência, onde:

strstr(texto, primeira ocorrência, false)

  • texto = string que se quer obter uma parte;
  • primeira ocorrência = primeira ocorrência da string encontrada no texto;
  • true = se "false" a função irá retornará a parte final do texto a partir da string encontrada. Obs.: Como "false" já é padrão poderá ser omitido.

Veja o exemplo abaixo:

<?php

$text = "O perigo de verdade não é que computadores passem a pensar como humanos, mas sim que
humanos passem a pensar como computadores";

$result = strstr($text, "não é que"); // false é default - podemos omitir
 
echo $result;

Veja o resultado abaixo:

😀 Para verificar o código acima, teste: Squids Editor PHP. Clique no botão [Run] para ver o resultado.

Documentação Oficial

1. [Funções para string - substr()] » Retorna parte de uma string.

2. [Funções para string - strpos()] » Junta elementos de uma matriz (array) em uma string.

3. [Funções para string - strstr()] » Retorna parte de uma string a partir de uma ocorrência.

O anúncio abaixo ajuda manter o Portal Visual Dicas

Comentários

×

Infomações do site / SEO