📜  PHP | fnmatch( )函数(1)

📅  最后修改于: 2023-12-03 15:18:23.114000             🧑  作者: Mango

PHP | fnmatch()函数

简介

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]表示匹配任意小写字母。
引用

PHP: fnmatch - Manual