PHP - Fonction preg_match_all ()

Syntaxe

int preg_match_all (string pattern, string string, array pattern_array [, int order]);

Définition et utilisation

La fonction preg_match_all () correspond à toutes les occurrences de pattern dans la chaîne.

Il placera ces correspondances dans le tableau pattern_array dans l'ordre que vous spécifiez en utilisant l'ordre des paramètres d'entrée facultatifs. Il existe deux types de commande possibles -

  • PREG_PATTERN_ORDER- est la valeur par défaut si le paramètre de commande facultatif n'est pas inclus. PREG_PATTERN_ORDER spécifie l'ordre de la manière que vous pourriez penser la plus logique; $ pattern_array [0] est un tableau de toutes les correspondances de motifs complètes, $ pattern_array [1] est un tableau de toutes les chaînes correspondant à la première expression rationnelle entre parenthèses, et ainsi de suite.

  • PREG_SET_ORDER- ordonnera le tableau un peu différemment du paramètre par défaut. $ pattern_array [0] contiendra les éléments correspondant à la première expression rationnelle entre parenthèses, $ pattern_array [1] contiendra les éléments correspondant à la deuxième expression rationnelle entre parenthèses, et ainsi de suite.

Valeur de retour

  • Renvoie le nombre de correspondances.

Exemple

Voici le morceau de code, copiez et collez ce code dans un fichier et vérifiez le résultat.

<?php
   $userinfo = "Name: <b>John Poul</b> <br> Title: <b>PHP Guru</b>";
   preg_match_all ("/<b>(.*)<\/b>/U", $userinfo, $pat_array);
   
   print $pat_array[0][0]." <br> ".$pat_array[0][1]."\n";
?>

Cela produira le résultat suivant -

John Poul PHP Guru