Comment récupérer une chaine qui est entre deux autres chaines en PHP ?

Réponses rédigées par Antoine
Dernière mise à jour : 2021-05-15 10:38:54
Thèmes : php
Question

Comment puis-je récupérer une chaine qui est entre deux autres chaines en PHP ?

Réponse

Pour récupérer et extraire une chaine incluse entre deux autres chaines de caractères, en PHP, vous pouvez utiliser la fonction strpos() pour identifier la position de la première occurrence de la chaîne, strlen() pour calculer sa taille, puis substr() pour extraire la chaine recherchée.

Voici un exemple pour récupérer une chaine qui est entre deux autres chaines, en PHP :

<?php
function extraire_chaine($chaine, $debut, $fin){
    $chaine = ' ' . $chaine;
    $ini = strpos($chaine, $debut);
    if ($ini == 0) return '';
    $ini += strlen($debut);
    $longueur = strpos($chaine, $fin, $ini) - $ini;
    return substr($chaine, $ini, $longueur);
}

$chaine = "une chaine avec une série de mots et quelques <b>balises</b> par ci par là !";
$chaine_extraite = extraire_chaine($chaine, "une chaine avec une série de mots et quelques", "par ci par là !");
echo $chaine_extraite;
?>