PHP preg_replace_callback_array() 函数

PHP 教程 · 2019-01-31 13:14:52

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

<?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 ); ?>

执行结果如下所示:

6 matches for "a" found
3 matches for "b" found

点击查看所有 PHP 教程 文章: https://www.codercto.com/courses/l/5.html

查看所有标签

我++

我++

威廉·J·米切尔 / 刘小虎等 / 中国建筑工业出版社 / 2006-6 / 50.00元

随着《我++——电子自我和互联城市》(Me++:The Cyborg Self And The Networked City)的出版,《比特之城》(City Of Bits)和《E-托邦》(E-topia)的作者完成了一套检验信息技术在日常生活中之衍生的非正式三部曲。威廉·J·米切尔描述了自马可尼以后的百年间无线技术的发展变化:网络的不断扩大,发送和接受装置的不断缩小。正如他所说,这就像“大人国重......一起来看看 《我++》 这本书的介绍吧!

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具