Maison > Article > développement back-end > Explication de la méthode php str_replace pour remplacer les heures spécifiées
méthode php str_replace, remplacez la chaîne
au format suivant :
mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )
recherche La valeur cible à trouver, qui est une aiguille. Un tableau peut spécifier plusieurs cibles.
replace La valeur de remplacement de la recherche. Un tableau peut être utilisé pour spécifier plusieurs remplacements.
subject Tableau ou chaîne pour effectuer le remplacement. C'est une botte de foin. Si le sujet est un tableau, l'opération de remplacement traversera tout le sujet et la valeur de retour sera également un tableau.
count Si spécifié, sa valeur sera définie sur le nombre de fois où le remplacement a eu lieu. C'est-à-dire combien de remplacements ont eu lieu au total.
Remarque :
Si la recherche et le remplacement sont des tableaux, alors str_replace() fera les deux sur le sujet Mapping remplacement.
Si le nombre de valeurs de remplacement est inférieur au nombre de valeurs de recherche, des chaînes vides seront utilisées pour des remplacements supplémentaires.
Si search est un tableau et replace est une chaîne, alors le remplacement de chaque élément dans la recherche utilise toujours cette chaîne.
La méthode de remplacement str_replace est sensible à la casse.
Exemple :
<?php $str = 'abcdefgh'; echo str_replace('abc', '123', $str); // 123defgh $str = '123456'; $search = array(1, 2, 3, 4, 5, 6); $replace = array('a', 'b', 'c', 'd', 'f', 'g'); echo str_replace($search, $replace, $str); // abcdefg $arr = array('abc','bac','cba'); $result = str_replace('b', 'B', $arr, $count); print_r($result); // Array ( [0] => aBc [1] => Bac [2] => cBa ) echo $count; // 3 共替换了3次 ?>
Il est plus pratique d'utiliser str_replace pour remplacer des chaînes, mais toutes les valeurs La recherche correspondante sera remplacée par la valeur de remplacement. Si vous souhaitez remplacer un nombre de fois spécifié, cette méthode ne peut pas être implémentée.
Par exemple : user_order_list est remplacé par user/order_list
862320a07e122d7c1dc458a27bae16d3
Pour remplacer un nombre de fois spécifié, vous pouvez utiliser la méthode habituelle preg_replace.
<?php /** * 对字符串执行指定次数替换 * @param Mixed $search 查找目标值 * @param Mixed $replace 替换值 * @param Mixed $subject 执行替换的字符串/数组 * @param Int $limit 允许替换的次数,默认为-1,不限次数 * @return Mixed */ function str_replace_limit($search, $replace, $subject, $limit=-1){ if(is_array($search)){ foreach($search as $k=>$v){ $search[$k] = '`'. preg_quote($search[$k], '`'). '`'; } }else{ $search = '`'. preg_quote($search, '`'). '`'; } return preg_replace($search, $replace, $subject, $limit); } ?>
Exemple :
<?php $str = 'user_order_list'; echo str_replace_limit('_', '/', $str, 1); // user/order_list $arr = array('abbc','bbac','cbba'); $result = str_replace_limit('b', 'B', $arr, 1); print_r($result); // Array ( [0] => aBbc [1] => Bbac [2] => cBba ) ?>
Cet article explique la méthode php str_replace pour remplacer un nombre de fois spécifié. Pour plus de contenu connexe, veuillez faire attention au chinois php. site web.
Recommandations associées :
À propos de header, headers_sent, headers_list, header_remove Mode d'emploi
L'interrogation de mysql via PDO renvoie le champ entier La solution pour changer le type en String
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!