- PHP 正则表达式(PCRE)
- PHP 图像处理
- PHP 5 Array 函数
- PHP 5 Calendar 函数
- PHP cURL 函数
- PHP 5 Date/Time 函数
- PHP 5 Directory 函数
- PHP Error 和 Logging 函数
- PHP 5 Filesystem 函数
- PHP Filter 函数
- PHP FTP 函数
- PHP HTTP 函数
- PHP Libxml 函数
- PHP Mail 函数
- PHP 5 Math 函数
- PHP 杂项 函数
- PHP 5 MySQLi 函数
- PHP 5 SimpleXML 函数
- PHP lcfirst() 函数
- PHP 5 String 函数
- PHP XML Parser 函数
- PHP Zip File 函数
- PHP 5 时区
PHP preg_replace_callback_array() 函数
preg_replace_callback_array 函数执行一个正则表达式搜索并且使用一个回调进行替换。
该函数在 PHP7+ 版本支持。
语法
mixed preg_replace_callback_array ( array $patterns_and_callbacks , mixed $subject [, int $limit = -1 [, int &$count ]] )
函数类似于 preg_replace_callback(), 但它是基于每个模式匹配来回调函数进行替换。
参数说明:
$patterns_and_callbacks: 关联数组,key(模式) => value(回调函数)
$subject: 要查找的和替换的字符串或数组。
$limit: 可选,每个模式最大的替换次数,默认为 -1(无限制,全部匹配完)。
$count: 可选,指定替换的次数。
返回值
如果 subject 是一个数组返回数组,否则返回字符串。发生错误则返回 NULL。
如果查找到了匹配,返回替换后的目标字符串(或字符串数组), 其他情况 subject 将会无变化返回。
实例
实例 1
$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
);
执行结果如下所示:
6 matches for "a" found 3 matches for "b" found
关注微信小程序
扫描二维码
程序员编程王