preg_replace_callback_arrayPerform a regular expression search and replace using callbacks
&reftitle.description;
stringarraynullpreg_replace_callback_arrayarraypatternstringarraysubjectintlimit-1intcount&null;intflags0
The behavior of this function is similar to
preg_replace_callback, except that callbacks are
executed on a per-pattern basis.
&reftitle.parameters;
pattern
An associative array mapping patterns (keys) to callables (values).
subject
The string or an array with strings to search and replace.
limit
The maximum possible replacements for each pattern in each
subject string. Defaults to
-1 (no limit).
count
If specified, this variable will be filled with the number of
replacements done.
flagsflags can be a combination of the
PREG_OFFSET_CAPTURE and
PREG_UNMATCHED_AS_NULL flags, which influence the
format of the matches array.
See the description in preg_match for more details.
&reftitle.returnvalues;
preg_replace_callback_array returns an array if the
subject parameter is an array, or a string
otherwise. On errors the return value is &null;
If matches are found, the new subject will be returned, otherwise
subject will be returned unchanged.
&reftitle.changelog;
&Version;&Description;7.4.0
The flags parameter was added.
&reftitle.examples;
preg_replace_callback_array example
function ($match) {
echo strlen($match[0]), ' matches for "a" found', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' matches for "b" found', PHP_EOL;
}
],
$subject
);
?>
]]>
&example.outputs;
&reftitle.seealso;
PCRE Patternspreg_replace_callbackpreg_quotepreg_replacepreg_last_errorAnonymous functions