Cet article présente principalement l'analyse de la vulnérabilité de remplacement str_replace en php. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
Définition et utilisation La fonction str_replace() utilise une chaîne pour remplacer d'autres caractères dans une chaîne.
Syntaxe
str_replace(find,replace,string,count)Description du paramètre
find Obligatoire. Spécifie la valeur à rechercher.
remplacement requis. Spécifie la valeur pour remplacer la valeur dans find.
chaîne requise. Spécifie la chaîne à rechercher.
compte facultatif. Une variable comptant le nombre de substitutions.
Conseils et notes Remarque : Cette fonction est sensible à la casse. Veuillez utiliser str_ireplace() pour effectuer une recherche insensible à la casse.
Remarque : Cette fonction est sécurisée pour les binaires.
Exemple 1
<?php echo str_replace("world","John","Hello world!"); ?>
Hello John!
Exemple 2
Dans cet exemple, nous démontrera la fonction str_replace() avec un tableau et une variable count :
<?php $arr = array("blue","red","green","yellow"); print_r(str_replace("red","pink",$arr,$i)); echo "Replacements: $i"; ?>
Array ( [0] => blue [1] => pink [2] => green [3] => yellow ) Replacements: 1
Exemple 3
<?php $find = array("Hello","world"); $replace = array("B"); $arr = array("Hello","world","!"); print_r(str_replace($find,$replace,$arr)); ?>
Array ( [0] => B [1] => [2] => ! )
<?php $arr1 = Array( 'http://img.jb51.net/img/offer/29/24/70/20/29247020', 'http://img.jb51.net/img/offer/29/24/70/20/29247020-1', 'http://img.jb51.net/img/offer/29/24/70/20/29247020-2' ); $arr2 = Array( 'http://localhost/root/ups/af48056fc4.jpg', 'http://localhost/root/ups/cf33240aa3.jpg', 'http://localhost/root/ups/c30e40419b.jpg' ); $data = ' <img src="http://img.jb51.net/img/offer/29/24/70/20/29247020"/> <img src="http://img.jb51.net/img/offer/29/24/70/20/29247020-1"/> <img src="http://img.jb51.net/img/offer/29/24/70/20/29247020-2"/>'; $data = str_replace($arr1,$arr2,$data); var_dump($data); ?>
function strrplace($arr1,$arr2,$data){ if(is_array($arr1)) { foreach($arr1 as $key => $value) { $data = str_replace_once($value, $arr2[$key], $data); } } return $data; } function str_replace_once($needle, $replace, $data) //替换第一次 { $pos = strpos($data, $needle); if ($pos === false) { return $data; } return substr_replace($data, $replace, $pos, strlen($needle)); }
Analyse de la fonction filter_var() et de la fonction Filter en PHP
À propos des chaînes d'interception PHP Résumé de quelques méthodes
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!