Como quebrar strings em PHP
Manipular strings é uma tarefa comum em qualquer linguagem de programação, e no PHP não é diferente. Às vezes, você pode precisar quebrar strings para separar seus elementos, obter partes específicas de uma frase, ou dividir um texto longo em palavras ou segmentos menores. O PHP oferece várias funções para fazer isso de forma simples e eficaz.
1. Usando explode() para quebrar strings com delimitadores
A função mais comum para quebrar strings em PHP é o explode()
. Ela divide uma string em um array com base em um delimitador que você especifica, como vírgulas, espaços ou qualquer outro caractere.
Sintaxe
array explode ( string $delimitador , string $string [, int $limite ] )
$delimitador
: O caractere ou string que será usado para dividir a string.$string
: A string original que será dividida.$limite
: (Opcional) Define o número máximo de divisões.
Exemplo 1: Quebrar uma string em palavras
Vamos quebrar uma frase em palavras, usando o espaço como delimitador:
<?php
$frase = "Aprender PHP é divertido!";
$palavras = explode(" ", $frase);
print_r($palavras);
?>
Saída:
Array
(
[0] => Aprender
[1] => PHP
[2] => é
[3] => divertido!
)
Aqui, o explode()
dividiu a frase em palavras e as armazenou em um array.
Exemplo 2: Quebrar uma string com vírgulas
Se você tiver uma lista separada por vírgulas e quiser quebrá-la em partes:
<?php
$lista = "maçã,banana,laranja,morango";
$frutas = explode(",", $lista);
print_r($frutas);
?>
Saída:
Array
(
[0] => maçã
[1] => banana
[2] => laranja
[3] => morango
)
Exemplo 3: Limitar o número de partes
Você também pode especificar um número máximo de divisões com o parâmetro $limite
. Se esse limite for positivo, ele retornará esse número de elementos. Se for negativo, ignorará esse número de elementos do final.
<?php
$frase = "um dois três quatro cinco";
$partes = explode(" ", $frase, 3);
print_r($partes);
?>
Saída:
Array
(
[0] => um
[1] => dois
[2] => três quatro cinco
)
2. Usando str_split() para quebrar strings por caracteres
Se você precisar quebrar uma string em caracteres individuais, a função str_split()
é ideal. Ela divide a string em substrings de um tamanho fixo (padrão de 1 caractere).
Sintaxe:
array str_split ( string $string [, int $tamanho = 1 ] )
$string
: A string que será dividida.$tamanho
: (Opcional) Define o tamanho de cada pedaço.
Exemplo 1: Quebrar string em caracteres
<?php
$palavra = "PHP";
$caracteres = str_split($palavra);
print_r($caracteres);
?>
Saída:
Array
(
[0] => P
[1] => H
[2] => P
)
Exemplo 2: Quebrar string em partes maiores
Você pode definir o tamanho de cada pedaço:
<?php
$texto = "abcdef";
$partes = str_split($texto, 2);
print_r($partes);
?>
Saída:
Array
(
[0] => ab
[1] => cd
[2] => ef
)
Aqui, str_split()
dividiu a string em partes de dois caracteres.
3. Usando preg_split() para quebrar strings com expressões regulares
A função preg_split()
permite que você quebre strings usando expressões regulares. Isso oferece mais flexibilidade, permitindo a divisão com base em padrões mais complexos.
Sintaxe:
array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags ]] )
$pattern
: A expressão regular que define o padrão de divisão.$subject
: A string que será dividida.$limit
: (Opcional) Limita o número de divisões.$flags
: (Opcional) Define algumas opções adicionais, como remoção de partes vazias.
Exemplo 1: Quebrar string por múltiplos delimitadores
Usando preg_split()
, você pode dividir uma string por múltiplos delimitadores, como espaços, vírgulas e pontos.
<?php
$frase = "PHP, JavaScript. HTML e CSS";
$partes = preg_split("/[\s,\.]+/", $frase);
print_r($partes);
?>
Saída:
Array
(
[0] => PHP
[1] => JavaScript
[2] => HTML
[3] => e
[4] => CSS
)
Aqui, preg_split()
usou uma expressão regular para dividir a string em partes, considerando espaços, vírgulas e pontos como delimitadores.
Exemplo 2: Remover elementos vazios com PREG_SPLIT_NO_EMPTY
<?php
$frase = "Um texto com espaços extras";
$partes = preg_split("/\s+/", $frase, -1, PREG_SPLIT_NO_EMPTY);
print_r($partes);
?>
Saída:
Array
(
[0] => Um
[1] => texto
[2] => com
[3] => espaços
[4] => extras
)
Aqui, PREG_SPLIT_NO_EMPTY
remove os elementos vazios que seriam criados pelos múltiplos espaços.
4. Usando substr() para extrair partes específicas de uma string
Embora não seja uma função que “quebra” a string em si, o substr()
permite extrair partes específicas da string, o que pode ser útil em muitas situações.
Sintaxe:
string substr ( string $string , int $inicio [, int $comprimento ] )
$inicio
: A posição inicial da substring (começando do índice 0).$comprimento
: (Opcional) O comprimento da substring.
Exemplo: Extrair parte de uma string
<?php
$frase = "Aprender PHP é divertido!";
$parte = substr($frase, 9, 3);
echo $parte; // Saída: PHP
?>
Neste exemplo, o substr()
retorna a substring começando no índice 9, com comprimento de 3 caracteres.
Quebrar strings em PHP é uma tarefa essencial em muitos cenários de desenvolvimento web. Seja para dividir uma lista de itens, separar uma frase em palavras ou manipular dados baseados em expressões regulares, PHP oferece uma variedade de funções para atender a diferentes necessidades.
As funções que vimos hoje incluem:
explode()
: Quebra strings com base em um delimitador específico.str_split()
: Divide uma string em caracteres ou partes de tamanho fixo.preg_split()
: Quebra strings usando expressões regulares, ideal para padrões mais complexos.substr()
: Extrai uma parte específica da string.
Agora que você conhece esses métodos, pode escolher o mais adequado para o seu projeto. Experimente e adapte conforme necessário!
Então conheça o curso online que já ajudou milhares de pessoas a aprender a programar e desenvolver seus próprios projetos do ZERO e usando orientação a objetos de uma forma fácil de entender.
CLIQUE NA IMAGEM ABAIXO E SAIBA MAIS:
Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
Sobre o Autor
0 Comentários