(PHP 7)
preg_replace_callback_array — Éffectue une recherche de correspondance avec une expression régulière et remplace grâce à une fonction de rappel
$patterns_and_callbacks
, mixed $subject
[, int $limit
= -1
[, int &$count
]] ) : mixedLe comportement de cette fonction est similaire à preg_replace_callback(), à l'exception que les fonctions de rappel sont exécutéees à chaque masque.
patterns_and_callbacks
Un tableau associatif qui établie une relation entre les masques (clés) et les fonctions de rappels (valeurs).
subject
La chaîne de caractères ou tableau qui contient les chaîne de caractères à chercher et remplacer.
limit
Le nombre maximum de remplacement pour chaque masque dans chaque
chaîne de caractères subject
. Par défaut
-1 (aucune limite).
count
Si fournit, cette variable sera remplit avec le nombre de remplacement effectué.
preg_replace_callback_array() retourne un tableau si
le paramètre subject
est un tableau, ou sinon
une chaîne de caractères. Lors d'une erreur la valeur de retour est NULL
.
Si des correspondances sont trouvées, le nouveau sujet sera retourné, sinon
subject
sera retourné inchangé.
Exemple #1 Exemple de preg_replace_callback_array()
<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
[
'~[a]+~i' => function ($match) {
echo strlen($match[0]), ' correspondances de "a" trouvées', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' correspondances de "b" trouvées', PHP_EOL;
}
],
$subject
);
?>
L'exemple ci-dessus va afficher :
6 correspondances de "a" trouvées 3 correspondances de "b" trouvées