Str_replace - Remplace toutes les occurrences de la chaîne de recherche par la chaîne de remplacement. Str_replace - Remplace toutes les occurrences d'une chaîne de recherche par une chaîne de remplacement Fonction de remplacement de caractères Php

Nous allons maintenant en examiner un très fonction utile pour , à savoir remplacer des parties de chaînes. Il s'agit de la fonction str_replace, qui est similaire à la méthode de éditeurs de texte"Remplacer". Lisez ci-dessous comment l'utiliser, des exemples et des conseils.

Options d'appel

str_replace a trois paramètres, qui sont tous obligatoires.

Str_replace (recherche, remplacement, originalString)

  • la recherche est ce que vous voulez trouver. Cela peut être une chaîne ou un tableau.
  • remplacer - tous les éléments trouvés que vous avez spécifiés lors de la recherche seront remplacés par cette valeur. Encore une fois, cela peut être une chaîne ou un tableau.
  • originalString - la chaîne d'origine dans laquelle la recherche sera effectuée. La fonction ne change PAS la chaîne d'entrée !

En fait, ici, comme dans toutes les leçons précédentes, tout est simple. Regardons l'exemple de code et tout se mettra immédiatement en place.

Exemple d'utilisation de str_replace

Nous avons donc la chaîne d'entrée « Il y a X kilogrammes de mandarines sur l'étagère ». Au lieu de « X », nous voulons substituer le nombre souhaité. Pour ce faire, vous pouvez utiliser la relecture quelque chose comme ceci :

//Chaîne d'entrée que nous utiliserons comme modèle $rawstring = "Il y a X kilogrammes de mandarines sur l'étagère."; //remplacer $str_1 = str_replace("X", "10", $rawstring); // peut être remplacé par une autre valeur, n'importe laquelle $str_2 = str_replace("X", "135473", $rawstring); echo "Première fois : ". $str_1 . "
"; echo "Deuxième fois : ". $str_2;

Nous obtenons ce qui suit :

Première fois : il y a 10 kilogrammes de mandarines sur l'étagère. Deuxième fois : il y a 135 473 kilogrammes de mandarines en rayon.

L’exemple, bien sûr, n’est pas le meilleur, je ne pouvais tout simplement pas en trouver un autre, mais il fait passer le message, n’est-ce pas ? J'espère que tout est clair, sinon, demandez dans les commentaires.

str_replace avec des tableaux : plusieurs remplacements en un

Dans l'exemple, nous avons utilisé la relecture pour remplacer un mot « X » par notre chaîne (un nombre ou autre), mais que se passe-t-il si nous voulons remplacer plusieurs mots ? Vous pouvez essayer d'utiliser simplement la fonction plusieurs fois, ou créer un tableau de mots QUE l'on remplacera, ainsi qu'un deuxième tableau avec les valeurs QUE l'on remplacera PAR, afin d'obtenir le résultat en un seul appel au fonction.

Développons le même exemple, mais remplaçons quelque chose d'autre.

//String - template $rawstring = "Sur Z se trouve X kilogramme de Y sélectionné."; //array QUOI nous remplacerons $placeholders = array("Z", "X", "Y"); //Array WHAT que nous remplacerons par $vals_1 = array("shelf", "5", "oranges"); //Eh bien, ou ceci $vals_2 = array("table", "189", "pears"); //remplacer une fois $str_1 = str_replace($placeholders, $vals_1, $rawstring); //remplacez deux $str_2 = str_replace($placeholders, $vals_2, $rawstring); echo "Un : ". $str_1 . "
"; echo "Deux : ". $str_2;

En conséquence, ce que nous obtenons.

(PHP4, PHP5, PHP7)

str_replace — Remplace toutes les occurrences de la chaîne de recherche par la chaîne de remplacement

Description

Cette fonction renvoie une chaîne ou un tableau avec toutes les occurrences de search dans subject remplacées par replace .

Si des règles de recherche/remplacement complexes (telles que des expressions régulières) ne sont pas nécessaires, il est préférable d'utiliser cette fonction. preg_replace().

Liste des paramètres

Si la recherche et le remplacement sont des tableaux, alors str_replace() utilise chaque valeur du tableau correspondant pour rechercher et remplacer dans subject . Si le tableau de remplacement contient moins d'éléments que search , la chaîne vide sera utilisée comme chaîne de remplacement pour les valeurs restantes.

Si search est un tableau et replace est une chaîne, alors cette chaîne de remplacement sera utilisée pour chaque élément du tableau de recherche. Le cas inverse n’a aucun sens.

Si la recherche ou le remplacement sont des tableaux, leurs éléments seront traités du premier au dernier. Valeur de recherche, également appelée aiguille

(aiguille). Vous pouvez utiliser un tableau pour plusieurs valeurs de recherche.

Remplacer

La valeur de remplacement sera utilisée pour remplacer les valeurs de recherche. Vous pouvez utiliser un tableau pour plusieurs valeurs.

Sujet La chaîne ou le tableau sur lequel la recherche et le remplacement sont effectués, également appelé meule de foin

(meule de foin).

Si le sujet est un tableau, alors la recherche et le remplacement seront effectués sur chaque élément sujet, et le résultat de la fonction sera également un tableau.

En cas de réussite, il sera fixé au nombre de remplacements effectués.

Valeurs de retour

Cette fonction renvoie une chaîne ou un tableau avec les valeurs remplacées.

Exemples str_replace()

Exemple #1 Exemples d'utilisation
// attribue " );

$bodytag = str_replace ("%body%" , "noir" , "
// attribue : Hll Wrld f PHP
$voyelles = array("a" , "e" , "i" , "o" , "u" , "A" , "E" , "I" , "O" , "U" );

$onlyconsonants = str_replace ($voyelles , "" , "Hello World of PHP" );
// assigne : Vous devriez manger de la pizza, de la bière et des glaces tous les jours $phrase =;
$healthy = array("fruits" , "légumes" , "fibres" );
$yummy = array("pizza" , "bière" , "glace" );

$newphrase = str_replace($healthy, $yummy, $phrase);

// attribue : 2
$str = str_replace ("ll" , "" , "bon sang, mademoiselle Molly !" , $count );
echo $compte ;
?>

Exemple #2 Exemples d'astuces potentielles avec str_replace()

// Ordre de remplacement
$str = "Ligne 1\nLigne 2\rLigne 3\r\nLigne 4\n";
$order = array("\r\n" , "\n" , "\r" );
$remplacer = "
" ;

// Traite \r\n en premier pour éviter de les remplacer à nouveau.
echo $newstr = str_replace ($order, $replace, $str);

// Imprime F car A est remplacé par B, puis B par C, et ainsi de suite...
// En conséquence, E sera remplacé par F, puisque le remplacement s'effectue de gauche à droite.
$search = array("A" , "B" , "C" , "D" , "E" );
$replace = array("B" , "C" , "D" , "E" , "F" );
$sujet = "A" ;
echo str_replace ($recherche, $remplacer, $sujet);

// Sorties : applerootrootnut (pour la raison ci-dessus)
$lettres = array("I" , "à propos" );
$fruit = array("pomme" , "noix" );
$text = "Je suis sur le point" ;
$output = str_replace ($lettres, $fruit, $text);
écho $sortie ;
?>

Remarques

Commentaire: Cette fonction permet de traiter en toute sécurité les données sous forme binaire.

Avertissement

Remarque sur la procédure de remplacement

Parce que str_replace() effectue un remplacement de gauche à droite, puis lors de l'utilisation de plusieurs remplacements, il peut remplacer une valeur précédemment insérée par une autre.

Commentaire:

Voir aussi des exemples sur cette page. Cette fonction est sensible à la casse. Utiliser str_ireplace()

(PHP4, PHP5, PHP7)

str_replace — Remplace toutes les occurrences de la chaîne de recherche par la chaîne de remplacement

Description

Cette fonction renvoie une chaîne ou un tableau avec toutes les occurrences de search dans subject remplacées par replace .

Si des règles de recherche/remplacement complexes (telles que des expressions régulières) ne sont pas nécessaires, il est préférable d'utiliser cette fonction. preg_replace().

Liste des paramètres

Si la recherche et le remplacement sont des tableaux, alors str_replace() utilise chaque valeur du tableau correspondant pour rechercher et remplacer dans subject . Si le tableau de remplacement contient moins d'éléments que search , la chaîne vide sera utilisée comme chaîne de remplacement pour les valeurs restantes.

Si search est un tableau et replace est une chaîne, alors cette chaîne de remplacement sera utilisée pour chaque élément du tableau de recherche. Le cas inverse n’a aucun sens.

Si la recherche ou le remplacement sont des tableaux, leurs éléments seront traités du premier au dernier. Valeur de recherche, également appelée aiguille

(aiguille). Vous pouvez utiliser un tableau pour plusieurs valeurs de recherche.

Remplacer

La valeur de remplacement sera utilisée pour remplacer les valeurs de recherche. Vous pouvez utiliser un tableau pour plusieurs valeurs.

Sujet La chaîne ou le tableau sur lequel la recherche et le remplacement sont effectués, également appelé meule de foin

(meule de foin).

Si le sujet est un tableau, alors la recherche et le remplacement seront effectués sur chaque élément sujet, et le résultat de la fonction sera également un tableau.

En cas de réussite, il sera fixé au nombre de remplacements effectués.

Valeurs de retour

Cette fonction renvoie une chaîne ou un tableau avec les valeurs remplacées.

Exemples str_replace()

Exemple #1 Exemples d'utilisation
// attribue " );

$bodytag = str_replace ("%body%" , "noir" , "
// attribue : Hll Wrld f PHP
$voyelles = array("a" , "e" , "i" , "o" , "u" , "A" , "E" , "I" , "O" , "U" );

$onlyconsonants = str_replace ($voyelles , "" , "Hello World of PHP" );
// assigne : Vous devriez manger de la pizza, de la bière et des glaces tous les jours $phrase =;
$healthy = array("fruits" , "légumes" , "fibres" );
$yummy = array("pizza" , "bière" , "glace" );

$newphrase = str_replace($healthy, $yummy, $phrase);

// attribue : 2
$str = str_replace ("ll" , "" , "bon sang, mademoiselle Molly !" , $count );
echo $compte ;
?>

Exemple #2 Exemples d'astuces potentielles avec str_replace()

// Ordre de remplacement
$str = "Ligne 1\nLigne 2\rLigne 3\r\nLigne 4\n";
$order = array("\r\n" , "\n" , "\r" );
$remplacer = "
" ;

// Traite \r\n en premier pour éviter de les remplacer à nouveau.
echo $newstr = str_replace ($order, $replace, $str);

// Imprime F car A est remplacé par B, puis B par C, et ainsi de suite...
// En conséquence, E sera remplacé par F, puisque le remplacement s'effectue de gauche à droite.
$search = array("A" , "B" , "C" , "D" , "E" );
$replace = array("B" , "C" , "D" , "E" , "F" );
$sujet = "A" ;
echo str_replace ($recherche, $remplacer, $sujet);

// Sorties : applerootrootnut (pour la raison ci-dessus)
$lettres = array("I" , "à propos" );
$fruit = array("pomme" , "noix" );
$text = "Je suis sur le point" ;
$output = str_replace ($lettres, $fruit, $text);
écho $sortie ;
?>

Remarques

Commentaire: pour un remplacement insensible à la casse.

Avertissement

Remarque sur la procédure de remplacement

Parce que str_replace() effectue un remplacement de gauche à droite, puis lors de l'utilisation de plusieurs remplacements, il peut remplacer une valeur précédemment insérée par une autre.

Commentaire:

Voir aussi des exemples sur cette page. Cette fonction est sensible à la casse. Utiliser Cette fonction permet de traiter en toute sécurité les données sous forme binaire.