preg_replace_callback_arrayВыполняет поиск и замену по регулярному выражению с использованием функций обратного вызова
&reftitle.description;
stringarraynullpreg_replace_callback_arrayarraypatternstringarraysubjectintlimit-1intcount&null;intflags0
Поведение этой функции похоже на
preg_replace_callback, за исключением того, что для каждого шаблона
используется своя функция обратного вызова.
&reftitle.parameters;
pattern
Ассоциативный массив, связывающий шаблоны регулярного выражения (ключи)
и callable (значения).
subject
Строка, в которой будет производиться поиск и замена.
limit
Максимальное количество замен для каждого шаблона в строке
subject. По умолчанию
-1 (без ограничений).
count
Если задан, то в указанную переменную будет записано количество произведённых замен.
flagsflags может быть комбинацией флагов
PREG_OFFSET_CAPTURE и
PREG_UNMATCHED_AS_NULL, которые влияют на
формат массива совпадений.
Смотрите описание в preg_match для более подробной информации.
&reftitle.returnvalues;
preg_replace_callback_array возвращает массив, если
параметр subject является массивом и строку, если строкой.
В случае возникновения ошибки возвращается &null;
Если совпадения найдены, будет возвращена новая строка, а если нет, то исходная
subject.
&reftitle.errors;
&pcre.pattern.warning;
&reftitle.changelog;
&Version;&Description;7.4.0
Добавлен параметр flags.
&reftitle.examples;
Пример использования preg_replace_callback_array
function ($match) {
echo 'Найдено ', strlen($match[0]), ' совпадений "a"', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo 'Найдено ', strlen($match[0]), ' совпадений "b"', PHP_EOL;
}
],
$subject
);
?>
]]>
&example.outputs;
&reftitle.seealso;
Шаблоны PCREpreg_replace_callbackpreg_quotepreg_replacepreg_last_errorАнонимные функции