La fonction preg_match_all est utilisée pour effectuer une correspondance d'expression régulière globale.
int preg_match_all ( chaîne $motif , chaîne $sujet [, tableau &$matches [, int $flags = PREG_PATTERN_ORDER [, int $offset = 0 ]]] )
Recherchez dans le sujet tous les résultats correspondant au modèle correspondant à l'expression régulière donnée et affichez-les dans les correspondances dans l'ordre spécifié par l'indicateur.
Une fois la première correspondance trouvée, la recherche de sous-séquence continue à partir de la dernière position correspondante.
Description du paramètre :
$pattern : Le modèle à rechercher, sous forme de chaîne.
$subject : chaîne d'entrée.
$matches : tableau multidimensionnel, affiche tous les résultats correspondants en tant que paramètres de sortie, le tri des tableaux est spécifié par des indicateurs.
$flags : peut être utilisé en combinaison avec les balises suivantes (notez que PREG_PATTERN_ORDER et PREG_SET_ORDER ne peuvent pas être utilisés en même temps) :
PREG_PATTERN_ORDER : les résultats sont triés selon que $matches[0] contient toutes les correspondances du modèle complet, $matches[1] contient toutes les correspondances du premier sous-groupe, et ainsi de suite.
PREG_SET_ORDER : les résultats sont triés car $matches[0] contient toutes les correspondances (y compris les sous-groupes) obtenues par la première correspondance, $matches[1] est un tableau contenant toutes les correspondances (y compris les sous-groupes) obtenues par la deuxième correspondance, donc cette analogie.
PREG_OFFSET_CAPTURE : si cet indicateur est passé, chaque correspondance trouvée est renvoyée avec son décalage par rapport à la chaîne cible augmenté.
offset : généralement, la recherche commence au début de la chaîne cible. Le paramètre facultatif offset est utilisé pour lancer la recherche à partir de la position spécifiée dans la chaîne cible (l'unité est en octets).
Renvoie le nombre de correspondances complètes (éventuellement 0), ou FALSE si une erreur se produit.
Le résultat de l'exécution est le suivant :
Array( [0] => <b>PHP</b> [1] => <b>Langage de programmation</b>)
Le résultat de l'exécution est le suivant :
correspondant : <b>texte en gras</b>partie 1 : <b>partie 2 : bpartie 3 : texte en graspartie 4 : </b>correspondant : <a href=howdy.html>cliquez sur moi</a>partie 1 : <a href=howdy.html>partie 2 : à part 3 : cliquez sur moipartie 4 : </a>