📅  最后修改于: 2023-12-03 15:18:23.114000             🧑  作者: Mango
fnmatch()
函数用于进行模式匹配,它可以根据指定的模式来检查一个字符串是否与该模式匹配。这个函数和shell的fnmatch()
函数功能相似。在PHP中使用fnmatch()
函数可以方便地进行字符串匹配,它支持常见的通配符模式匹配。
bool fnmatch ( string $pattern , string $string [, int $flags = 0 ] )
fnmatch()
函数的参数如下:
$pattern
:匹配模式,可以包含通配符和转义字符。$string
:需要进行匹配的字符串。$flags
(可选):可以设置不同的标志来修改匹配的行为,默认为0。常用的标志包括:FNM_NOESCAPE
:禁用转义字符的处理。FNM_PATHNAME
:斜杠字符/
要求精确匹配。如果字符串匹配模式,则返回true
,否则返回false
。
以下是一些使用fnmatch()
函数的例子:
$pattern = 'test*.txt';
$string = 'test123.txt';
if (fnmatch($pattern, $string)) {
echo "匹配成功";
} else {
echo "匹配失败";
}
上述例子中,test*.txt
是一个通配模式,$string
是待匹配的字符串。fnmatch()
函数会检查$string
是否和模式匹配,如果匹配成功,则输出"匹配成功"。
fnmatch()
函数采用的是大小写敏感的匹配方式。如果需要进行大小写不敏感的匹配,可以使用strcasecmp()
函数进行比较。*
表示任意字符序列,?
表示任意单个字符,[abc]
表示a、b、c中的任意一个字符。fnmatch()
函数也支持[]
范围匹配,比如[a-z]
表示匹配任意小写字母。