Manual do PHP
Anterior |  | Próxima

# str_replace

(PHP 3>= 3.0.6, PHP 4 )

str_replace -- Substitui todas as ocorrências da string de procura com a string de substituição

## Descrição

mixed str_replace ( mixed pesquisa, mixed substitui, mixed assunto [, int &count])

Esta função retorna uma string ou um array com todas as ocorrências de `pesquisa` em `assunto` substituidas com a o valor dado para `substitui`. Se você não precisa de regras de substituição especiais, você sempre poderia usar esta função ao invés de ereg_replace() ou preg_replace().

Como do PHP 4.0.5, cada parâmetro em str_replace() pode ser um array.

Atenção

Em versões do PHP anteriores à 4.3.3 existia um bug ao se usar arrays em ambos os parâmetros `pesquisa` e `substitui` que causava índices de `pesquisa` vazios para serem pulados sem avançar o apontador interno no array `substitui`. Isto foi corrigido no `PHP 4.3.3`, quaisquer scripts que contavam com este bug removeriam valores de pesquisa vazios anteriores à chamada desta função afim de imitar o comportamento original.

Se `assunto` é um array, então a pesquisa e a substituição é executada com cada entrada do `assunto`, e o valor de retorno é um array também.

Se `pesquisa` e `substitui` são arrays, então str_replace() pega o valor de cada array e os usa para fazer a pesquisa e a substituição em `subject`. Se `substitui` tem menos valores do que `pesquisa`, então um string vazia é usada para o restante dos valores de substituição. Se `pesquisa` é um array e `substitui` é uma string; então esta string de substituição é usada para cada valor de `pesquisa`.

Exemplo 1. str_replace() exemplos

`<?php
// Fornece: <body text='black'>
$bodytag = str_replace("%body%", "black", "<body text='%body%'>");
// Fornece: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
// Fornece: você comeria pizza, cerveja e sorvete todos os dias
$frase = "você comeria frutas, vegetais, e fibra todos os dias.";
$saldavel = array("frutas", "vegetais", "fibra");
$saboroso = array("pizza", "cerveja", "sorvete");
$novafrase = str_replace($saudavel, $saboroso, $frase);
// Uso do parâmetro count está disponível no PHP 5.0.0
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count; // 2
?>`

> Nota: Esta função é compatível com dados binários

> Nota: No `PHP 5.0.0` o número "neddles" (`search`) combinadas e substituidas será retornado em `count` que é passado por referência. Antes do `PHP 5.0.0` este parâmetro não estava disponível.

Veja também str_ireplace(), substr_replace(), ereg_replace(), preg_replace(), e strtr().

Anterior | Principal | Próxima
str_repeat | Acima | str_rot13