preg_replace_callback_array Perform a regular expression search and replace using callbacks &reftitle.description; stringarraynullpreg_replace_callback_array arraypattern stringarraysubject intlimit-1 intcount&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. flags flags 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.errors; &pcre.pattern.warning; &reftitle.changelog; &Version; &Description; 7.4.0 The flags parameter was added. &reftitle.examples; <function>preg_replace_callback_array</function> 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 Patterns preg_replace_callback preg_quote preg_replace preg_last_error Anonymous functions