English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A função preg_replace_callback_array() do PHP executa uma busca de expressão regular e usa uma função de callback para substituição.
Esta função no PHP7+ Suporte a Versões.
mixed preg_replace_callback_array ( array $patterns_and_callbacks , mixed $subject [, int $limit =) -1 [, int &$count ]] )
Função semelhante a preg_replace_callback(), mas é baseado em cada correspondência de padrão para a função de callback de substituição.
Descrição dos Parâmetros:
$patterns_and_callbacks: Array associativo, key(modelo) => value( função de callback)
$subject: String ou array a ser encontrado e substituído.
$limit: Opcional, número máximo de substituições por padrão para cada padrão, padrão: -1(sem limite, todas as correspondências são substituídas).
$count: Opcional, especifica o número de substituições.
Se o subject for um array, retorna um array; caso contrário, retorna uma string. Em caso de erro, retorna NULL.
Se forem encontradas correspondências, retorna a string de destino substituída (ou array de strings), caso contrário, o subject será retornado inalterado.
<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
[
'~[a]+~i' => function ($match) {
echo strlen($match[0]), ' correspondências encontradas para "a"', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' correspondências encontradas para "b"', PHP_EOL;
}
],
$subject
);
?>
O resultado da execução é mostrado a seguir:
6 encontrados correspondências para "a" 3 encontrados correspondências para "b"