En réponse à une requête concernant la façon de localiser la deuxième occurrence d'une chaîne à l'aide de la fonction strpos , qui est généralement utilisé pour trouver la première occurrence, nous présentons une solution alternative.
Le code fourni définit une fonction personnalisée, strposX, qui permet de récupérer la Xème occurrence d'une sous-chaîne dans une chaîne donnée. Cette fonction prend trois paramètres : $haystack (la chaîne source), $needle (la sous-chaîne à localiser) et $number, qui représente l'occurrence souhaitée à trouver.
Pour le scénario où l'occurrence souhaitée est la deuxième (c'est-à-dire que $number vaut 2), la fonction strposX s'appelle récursivement pour identifier la position de la première occurrence de la sous-chaîne, ajoute la longueur de la sous-chaîne à cette position et utilise strpos pour localiser la deuxième occurrence dans la partie restante de la chaîne.
Voici une version simplifiée du code :
<code class="php">function strposX($haystack, $needle, $number = 0) { return strpos($haystack, $needle, $number > 1 ? strposX($haystack, $needle, $number - 1) + strlen($needle) : 0 ); }</code>
En utilisant cette fonction, on peut facilement obtenir la deuxième occurrence d'une sous-chaîne dans une chaîne, offrant un solution au-delà de l'identification standard de première occurrence fournie par strpos.
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!