preg_replace_callback_array

(PHP 7)
Perform a regular expression search and replace using callbacks
mixed preg_replace_callback_array ( array $patterns_and_callbacks, mixed $subject [, int $limit = -1 [, int &$count ]] )

The behavior of this function is similar to preg_replace_callback(), except that callbacks are executed on a per-pattern basis.

Parameters:
patterns_and_callbacks

An associative array mapping patterns (keys) to callbacks (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.

Returns:

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.

Examples:
preg_replace_callback_array() example
<?php
$subject = 'Aaaaaa Bbb';

preg_replace_callback_array(
    [
        '~[a]+~i' => 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
);
?>

The above example will output:

6 matches for "a" found
3 matches for "b" found
See also:

PCRE Patterns -

preg_replace_callback() -

preg_quote() -

preg_replace() -

preg_last_error() -

Anonymous functions -

callback -

doc_php
2016-02-24 16:12:20
Comments
Leave a Comment

Please login to continue.