Substituindo texto com str_replace() no PHP

A função str_replace() permite substituir ocorrências de uma substring por outra dentro de uma string.

Substituindo texto com str_replace() no PHP

A função str_replace() é amplamente usada no PHP para substituir todas as ocorrências de uma substring por outra dentro de uma string. Sua sintaxe básica é:

$nova_string = str_replace($procurar, $substituir, $original);

Exemplo básico

Vamos considerar um exemplo simples em que desejamos substituir todas as ocorrências de uma palavra por outra em uma string:

$texto = 'Olá Mundo! Mundo é ótimo.';
$texto_novo = str_replace('Mundo', 'Universo', $texto);
echo $texto_novo; // Saída: Olá Universo! Universo é ótimo.

Neste exemplo, o PHP substitui todas as ocorrências de 'Mundo' por 'Universo'. A função realiza a substituição em todo o texto fornecido.

Substituindo múltiplas substrings

Você também pode passar arrays de substrings para str_replace() para realizar múltiplas substituições de uma só vez. Exemplo:

$texto = 'Olá Mundo! Mundo é ótimo.';
$substituicoes = ['Mundo' => 'Universo', 'ótimo' => 'incrível'];
$texto_novo = str_replace(array_keys($substituicoes), array_values($substituicoes), $texto);
echo $texto_novo; // Saída: Olá Universo! Universo é incrível.

Aqui, estamos usando um array associativo, onde a chave é a substring a ser substituída e o valor é o texto que a substitui.

Limite de substituições

Você também pode especificar um limite para o número de substituições feitas. Por exemplo, se quiser substituir apenas a primeira ocorrência de uma substring:

$texto = 'Olá Mundo! Mundo é ótimo.';
$texto_novo = str_replace('Mundo', 'Universo', $texto, 1);
echo $texto_novo; // Saída: Olá Universo! Mundo é ótimo.

Neste caso, apenas a primeira ocorrência de 'Mundo' é substituída, porque o limite foi definido como 1.

Considerações sobre desempenho

Embora str_replace() seja muito eficiente, em grandes textos ou substituições muito complexas, você deve ter em mente o desempenho. A função realiza substituições de todas as ocorrências, o que pode ser custoso em termos de memória e tempo de processamento se o texto for grande.

Conclusão

A função str_replace() é essencial para manipulação de texto em PHP, permitindo substituir facilmente substrings dentro de uma string. Seja para substituir palavras, corrigir erros em textos, ou até mesmo para formatar entradas de dados, essa função oferece uma maneira prática e eficiente de fazer alterações em textos.

Substituições de texto são tarefas comuns ao trabalhar com strings, e a função str_replace() no PHP facilita essas operações. Seja substituindo palavras em uma string, corrigindo erros de digitação ou até mesmo formatando entradas de dados, essa função pode ser sua aliada. Uma dica importante é usar o recurso de múltiplas substituições ao trabalhar com listas de palavras a serem trocadas em um único passo. Lembre-se, no entanto, de verificar o desempenho quando for trabalhar com grandes volumes de texto, pois o PHP realiza a busca e substituição por todo o conteúdo fornecido.

Algumas aplicações:

  • Substituir palavras em textos antes de armazená-los em bancos de dados.
  • Corrigir erros de digitação em textos dinâmicos gerados pelo usuário.
  • Formatar entradas de dados antes de exibi-los para o usuário.
  • Substituir variáveis em templates de emails ou páginas web.

Dicas para quem está começando

  • Se você tiver muitas substituições para fazer, tente usar um array para combinar várias substituições em uma única chamada de str_replace().
  • Quando precisar de um número limitado de substituições, use o parâmetro de limite na função para otimizar o processo.
  • Se o seu texto for grande, teste o desempenho de str_replace() em comparação com outras abordagens, como expressões regulares, especialmente para padrões complexos.
  • Lembre-se que str_replace() é sensível a maiúsculas e minúsculas. Use str_ireplace() se precisar de uma substituição que ignore a diferença entre maiúsculas e minúsculas.

Contribuições de João Gutierrez

Compartilhe este tutorial: str_replace()

Compartilhe este tutorial

Continue aprendendo:

strlen()

A função strlen() no PHP retorna o número de caracteres em uma string. Entenda como utilizá-la corretamente.

Tutorial anterior

substr()

A função substr() no PHP permite extrair uma parte específica de uma string, podendo ser útil para manipulação de textos.

Próximo tutorial