str_replace

(PHP 3>= 3.0.6, PHP 4 )

str_replace --  Remplace toutes les occurrences dans une chaîne

Description

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

str_replace() retourne une chaîne ou un tableau, dont toutes les occurences de search dans subject ont été remplacée par replace. Si vous n'avez pas besoin de règles de remplacement compliquées, utilisez cette fonction de préférence à ereg_replace() et preg_replace().

En PHP 4.0.5 et plus récent, tous les paramètres de str_replace() peuvent être des tableaux.

Si subject est un tableau, alors le remplacement se fera sur chaque élément de celui-ci, et la valeur retournée sera aussi un tableau.

Si search et replace sont des tableaux, alors str_replace() prendra une valeur de chaque tableau, et l'utilisera pour faire le remplacement dans subject. Si replace a moins de valeurs que search, alors une chaîne vide sera utilisée pour effectuer les remplacements. Si search est un tableau et que replace est une chaîne, alors la chaîne de remplacement sera utilisée pour chaque élément de search.

Exemple 1. Exemple avec str_replace()

<?php
// G&eacute;n&egrave;re : <body text='black'>
echo $bodytag = str_replace("%body%", "black", "<body text='%body%'>");

// G&eacute;n&egrave;re : Bnjr l mnd
$voyelles = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
echo
$consonnes = str_replace($voyelles, "", "Bonjour le monde");

// G&eacute;n&egrave;re : Vous devriez manger des pizzas, des bi&egrave;rse et des g&acirc;teaux tous les jours.
$phrase  = "Vous devriez manger des fruits, des l&eacute;gumes et des fibres tous les jours.";
$regime = array("fruits", "l&eacute;gumes", "fibres");
$bonne_chere   = array("pizzas", "bi&egrave;res", "g&acirc;teaux");

echo
$newphrase = str_replace($regime, $bonne_chere, $phrase);

// Utilisation du compteur d'occurences en PHP 5.0.0
$str = str_replace("a", "", "La disparition est un lipogramme en E.", $count);
echo
$count; // 3
?>

str_replace() est compatible avec les chaînes binaires.

Note : str_replace() a été ajoutée en PHP 3.0.6, mais était buggée jusqu'en PHP 3.0.8.

Note : Cette fonction gère les chaînes binaires

Note : Depuis PHP 5.0, le nombre de valeurs de search trouvées et remplacées seront retournées dans le paramètre count passé par référence.

Voir aussi str_ireplace(), substr_replace(), ereg_replace(), preg_replace() et strtr().