Maison  >  Article  >  développement back-end  >  PHP implémente la méthode de remplacement une seule fois ou N fois

PHP implémente la méthode de remplacement une seule fois ou N fois

墨辰丷
墨辰丷original
2018-06-06 15:08:142483parcourir

Cet article présente principalement la méthode de remplacement une ou N fois en PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Méthode 1 : str_replace_once
IdéeTout d'abord, recherchez la position du mot-clé à remplacer, puis utilisez la fonction substr_replace pour le remplacer directement.

<?php
function str_replace_once($needle, $replace, $haystack) {
// Looks for the first occurence of $needle in $haystack
// and replaces it with $replace.
$pos = strpos($haystack, $needle);
if ($pos === false) {
// Nothing found
return $haystack;
}
return substr_replace($haystack, $replace, $pos, strlen($needle));
}
?>

Méthode 2, str_replace_limit
Idée Utilisez toujours preg_replace, mais ses paramètres ressemblent plus à preg_replace, et quelques spéciaux les personnages ont été échappés pour une meilleure polyvalence.

<?
function str_replace_limit($search, $replace, $subject, $limit=-1) {
// constructing mask(s)...
if (is_array($search)) {
foreach ($search as $k=>$v) {
$search[$k] = &#39;`&#39; . preg_quote($search[$k],&#39;`&#39;) . &#39;`&#39;;
}
}
else {
$search = &#39;`&#39; . preg_quote($search,&#39;`&#39;) . &#39;`&#39;;
}
// replacement
return preg_replace($search, $replace, $subject, $limit);
}
?>

Résumé : 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.

Recommandations associées :

Solutions et exemples de problèmes de code tronqué en PHP utilisant PDO pour faire fonctionner la base de données

php génère des codes QR avec logos Méthode d'implémentation

Méthodes et exemples d'implémentation de la classe de base Model basée sur mysqli en PHP

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