Funções para String
PHP Manual

str_replace

(PHP 4, PHP 5)

str_replaceSubstitui todas as ocorrências da string de procura com a string de substituição

Descrição

mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

Esta função retorna uma string ou um array com todas as ocorrências de search em subject substituídas com o valor dado para replace.

Se você não precisa de regras de substituição especiais (como expressões regulares), você sempre poderia usar esta função ao invés de ereg_replace() ou preg_replace().

Parâmetros

Se search e replace 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 replace tem menos valores do que search, então uma string vazia é usada para o restante dos valores de substituição. Se search é um array e replace é uma string, então esta string de substituição é usada para cada valor de search. O contrário não faria sentido, contudo.

Se search ou replace são arrays, seus elementos são processados do primeiro ao último.

search

replace

subject

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

count

Nota: Se passado, guardará o número de combinações e modificações feitas.

Valor Retornado

Esta função retorna uma string ou um array com os valores modificados.

Changelog

Versão Descrição
5.0.0 O parâmetro count foi adicionado.
4.3.3 O comportamento desta função foi modificado. Em antigas versões um bug existia ao se usar arrays em ambos os parâmetros search e replace que causava índices de search vazios para serem pulados sem avançar o apontador interno no array replace. 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.
4.0.5 Mais parâmetros podem agora ser um array.

Exemplos

Exemplo #1 Exemplos da str_replace()

<?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.";
$saudavel = 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

// Order of replacement
$str     "Line 1\nLine 2\rLine 3\r\nLine 4\n";
$order   = array("\r\n""\n""\r");
$replace '<br />';
// Processes \r\n's first so they aren't converted twice.
$newstr str_replace($order$replace$str);

// Outputs: apearpearle pear
$letters = array('a''p');
$fruit   = array('apple''pear');
$text    'a p';
$output  str_replace($letters$fruit$text);
echo 
$output;
?>

Notas

Nota: Esta função é binary-safe.

Nota:

Esta função é case-sensitive. Use str_ireplace() para substituição case-insensitive.

Veja Também


Funções para String
PHP Manual