语法:
int preg_match_all (字符串$ pattern ,字符串$ subject [,数组和$ matches [,整数$ flags = PREG_PATTERN_ORDER [,整数$ offset = 0 ]]] )
搜索主题中所有匹配模式给定正则表达式的匹配结果并将它们以标志指定顺序输出到匹配中。
在第一个匹配找到后,子序列继续从最后一次匹配位置搜索。
参数说明:
$ pattern:要搜索的模式,串联形式。
$ subject:输入字符串。
$ matches:多维数据集,作为输出参数输出所有匹配结果,并通过标记进行排序。
$ flags:可以结合下面的标记使用(注意不能同时使用PREG_PATTERN_ORDER和PREG_SET_ORDER):
PREG_PATTERN_ORDER:结果排序为$ matches [0]保存完整模式的所有匹配,$ matches [1]保存第一个子组的所有匹配,以此类推。
PREG_SET_ORDER:结果排序为$ matches [0]包含第一次匹配得到的所有匹配(包含子组),$ matches [1]是包含第二次匹配到的所有匹配(包含子组)的层叠,从而类推。
PREG_OFFSET_CAPTURE:如果这个标记被传递,每个发现的匹配返回时会增加它相对目标字符串的位移量。
offset:通常,发现时从目标字符串的开始位置开始。可选参数offset用于从目标字符串中指定位置开始搜索(单位是字节)。
返回值:返回完整的匹配次数(可能是0),或者如果发生错误返回FALSE。