PHP - Función preg_match_all ()

Sintaxis

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

Definición y uso

La función preg_match_all () coincide con todas las apariciones de patrón en cadena.

Colocará estas coincidencias en la matriz pattern_array en el orden que especifique utilizando el orden de parámetro de entrada opcional. Hay dos tipos posibles de orden:

  • PREG_PATTERN_ORDER- es el valor predeterminado si no se incluye el parámetro de pedido opcional. PREG_PATTERN_ORDER especifica el orden de la forma que podría pensar más lógica; $ pattern_array [0] es una matriz de todas las coincidencias de patrones completas, $ pattern_array [1] es una matriz de todas las cadenas que coinciden con la primera expresión regular entre paréntesis, y así sucesivamente.

  • PREG_SET_ORDER- Ordenará la matriz de forma un poco diferente a la configuración predeterminada. $ pattern_array [0] contendrá elementos que coincidan con la primera expresión regular entre paréntesis, $ pattern_array [1] contendrá elementos que coincidan con la segunda expresión regular entre paréntesis, y así sucesivamente.

Valor devuelto

  • Devuelve el número de coincidencias.

Ejemplo

A continuación se muestra el fragmento de código, copie y pegue este código en un archivo y verifique el resultado.

<?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";
?>

Esto producirá el siguiente resultado:

John Poul 
PHP Guru