# preg_replace_callback_array

(PHP 7, PHP 8)

preg_replace_callback_array — Realizar una búsqueda y sustitución de expresión regular con retrollamadas

### Descripción

preg_replace_callback_array(
array `$patterns_and_callbacks`,
mixed `$subject`,
int `$limit` = -1,
int `&$count` = ?
): mixed

El comportamiento de esta función es similar a la de preg_replace_callback(), excepto que las retrollamadas se ejecutan en función de cada patrón.

### Parámetros

`patterns_and_callbacks`

  Un array asociativo con correspondencias entre patrones (claves) y retrollamadas (valores).

`subject`

  El sujeto. Un string o array con varios strings para la búsqueda y sustitución.

`limit`

  Las sustituciones máximas posibles para cada patrón en cada string de `subject`. Su valor predeterminado es de `-1` (sin límite).

`count`

  La cuenta. Si se especifica, esta variable contrendrá el número de sustituciones hechas.

### Valores devueltos

preg_replace_callback_array() devuelve un array si el parámetro `subject` es un array, o un string en caso contrario. En caso de error devuelve `null`

Si se encuentran coincidencias, será devuelto el nuevo sujeto; si no, `subject` será devuelto sin cambios.

### Ejemplos

Ejemplo #1 Ejemplo de preg_replace_callback_array()

`<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
[
'~[a]+~i' => function ($match) {
echo strlen($match[0]), ' coincidencias de "a" encontradas', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' coincidencias de "b" encontradas', PHP_EOL;
}
],
$subject
);
?>`

El resultado del ejemplo sería:

    6 coincidencias de "a" encontradas
    3 coincidencias de "b" encontradas

### Ver también

- Patrones de PCRE
- preg_replace_callback() - Realiza una búsqueda y sustitución de una expresión regular usando una llamada de retorno
- preg_quote() - Escapar caracteres en una expresión regular
- preg_replace() - Realiza una búsqueda y sustitución de una expresión regular
- preg_last_error() - Devuelve el código de error de la última ejecución de expresión regular de PCRE
- Funciones anónimas