Maison  >  Article  >  développement back-end  >  Utilisation et différence entre les fonctions de remplacement de chaîne strtr() et str_repalce() en PHP

Utilisation et différence entre les fonctions de remplacement de chaîne strtr() et str_repalce() en PHP

墨辰丷
墨辰丷original
2018-05-30 14:44:001824parcourir

Les fonctions de remplacement en PHP incluent principalement strtr() et str_repalce(). L'article suivant présente principalement la différence et l'utilisation entre les deux. L'article le présente en détail à travers un exemple de code. Les amis dans le besoin peuvent s'y référer. suivez l'éditeur pour apprendre ensemble.

Tout d'abord, jetons un coup d'œil aux deux utilisations de cette fonction de remplacement de chaîne PHP strtr() :

strtr(string,from,to) ou strtr(string,array) Tout d'abord, concentrons-nous sur le première fonction strtr Méthode :

Regardons l'exemple suivant :

<?php
echo strtr("I Love you","Lo","lO");
?>

Le résultat est : Je t'aime

Ce résultat nous rappelle :

1.strtr Il est sensible à la casse

2. Le remplacement de strtr est très spécial. Faites attention au you à l'arrière qui est remplacé.

Donnez un autre exemple spécial pour illustrer l'étrangeté de cette fonction php sttr

<?php
echo strtr("I Love you","Love","");
?>

Le résultat est : Je t'aime

ne changera rien, donc strtr doit faire attention à :

3 Il ne peut pas être remplacé par vide, c'est-à-dire que le dernier paramètre ne peut pas être une chaîne vide, et. bien sûr, il y a un espace. C'est possible.

Un autre exemple de fonction strtr :

<?php
echo strtr("I Loves you","Love","lOvEA");
?>

Le résultat est : Je t'aime

Note que A dans le troisième paramètre n’apparaît pas dans le résultat.

4. Je ne recommande pas d'utiliser strtr pour échanger moins contre plus.

ok, puisque cette fonction strtr est assez gênante, pourquoi l'utilisez-vous encore ?

La raison est que c'est rapide. On dit que strtr est quatre fois plus rapide que str_replace.

5. Assurez-vous d'utiliser la fonction strtr lorsque vous le pouvez.

Comment l'utiliser confortablement ?

C'est le deuxième cas :

strtr(string,array)

6.strtr répond aux souhaits Comment utilisez

<?php
$table_change = array(&#39;you&#39;=>&#39;her sister&#39;);
echo strtr("I Love you",$table_change);
?>

Le résultat est : J'aime sa sœur

Conseils : Vous pensez remplacer ce que vous voulez, ajoutez simplement au tableau

Par exemple :

<?php
$table_change = array(&#39;you&#39;=>&#39;her sister&#39;);
$table_change += array(&#39;Love&#39; => &#39;hate&#39;);
echo strtr("I Love you",$table_change);
?>

Le résultat est : I déteste sa sœur

Rappelez-moi encore qu'écrire Love comme love ne fonctionnera pas.

Remplacement des cordes.

Syntaxe : string str_replace(string aiguilles, string str, string haystack);<code>string str_replace(string needle, string str, string haystack);<br>

Valeur de retour : string

Type de fonction : Traitement des données

Description du contenu :

Cette fonction remplace la chaîne str par la chaîne de botte de foin et remplace toutes les aiguilles par str.

L'exemple suivant remplace %body% par le format noir

<?php
$bodytag = str_replace("%body%", "black", "<body text=%body%>");
echo $bodytag;
?>

 :

[@str_replace("Ancien contenu à remplacer", "Nouveaux caractères pour remplacer le contenu original", $Nom variable du contenu remplacé)]

[@str_replace(array('Old1','Old2','Old3'), array('New1','New2','New3'), $Le contenu à remplacer Nom de la variable)]

[@str_replace(array('old1','old2','old3'), 'new content', $variable nom du contenu remplacé)]

Exemple :

Remplacement plusieurs-à-un : je souhaite effacer toutes les balises e388a4556c0f65e1904146cc1a846bee94b3e26ee717c64999d7867364b1b4a3 > ]@str_replace(array('e388a4556c0f65e1904146cc1a846bee','94b3e26ee717c64999d7867364b1b4a3'), '', $Content)

Remplacement un à un : je souhaite remplacer toutes les balises 0c6dc11e160d3b678d68754cc175188a dans le champ de contenu par e388a4556c0f65e1904146cc1a846bee Je souhaite remplacer 0c6dc11e160d3b678d68754cc175188a dans le champ de contenu par df250b2156c434f3390392d09b1c9563, remplacer e388a4556c0f65e1904146cc1a846bee par f32b48428a809b51f04d3228cdf461fa et effacer tous les 94b3e26ee717c64999d7867364b1b4a3 >

Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun. @str_replace('0c6dc11e160d3b678d68754cc175188a', 'e388a4556c0f65e1904146cc1a846bee', $Content)

@str_replace(array('0c6dc11e160d3b678d68754cc175188a', 'e388a4556c0f65e1904146cc1a846bee','94b3e26ee717c64999d7867364b1b4a3') array('df250b2156c434f3390392d09b1c9563','f32b48428a809b51f04d3228cdf461fa',''), $Content)Recommandations associées :

Comment obtenir la durée des fichiers audio en PHP


PHP Implémentation de la méthode de lecture des fichiers XML


Méthode PHP de restriction de l'accès IP_

phpAstuces


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn