PHP fnmatch 文件系统函数

定义和用法

fnmatch - 用模式匹配文件名
目前该函数无法在 Windows 或其它非 POSIX 兼容的系统上使用。

版本支持

PHP4PHP5PHP7
4.3.0(含)+支持 支持 支持
5.3.0 此函数开始在 Windows 平台上生效。

语法

fnmatch ( string $pattern , string $string [, int $flags = 0 ] )   

fnmatch() 检查传入的 string 是否匹配给出的 shell 统配符 pattern。

参数

参数必需的描述
pattern shell 通配符。
string 要检查的字符串。 此函数对于文件名尤其有用,但也可以用于普通的字符串。 普通用户可能习惯于 shell 模式或者至少其中最简单的形式 '?' 和 '*' 通配符,因此使用 fnmatch() 来代替 preg_match() 来进行前端搜索表达式输入对于非程序员用户更加方便。
flags flage 的值可以是以下标志的任何组合,并与二进制OR(|)运算符结合在一起。
  • FNM_NOESCAPE - 禁用反斜杠转义。
  • FNM_PATHNAME - 字符串中的斜杠仅匹配给定模式中的斜杠。
  • FNM_PERIOD - 字符串中的前导期间必须与给定模式中的期间精确匹配。
  • FNM_CASEFOLD - 最小匹配。 GNU扩展的一部分。

返回值

匹配则返回 TRUE,否则返回 FALSE。

示例

if (fnmatch("*gr[ae]y", $color)) {
  echo "some form of gray ...";
}

相关函数

glob() - 寻找与模式匹配的文件路径
preg_match() - 执行匹配正则表达式
sscanf() - 根据指定格式解析输入的字符
printf() - 输出格式化字符串
sprintf() - 返回格式化的字符串

  

 

原文地址:https://www.cnblogs.com/jc2182/p/11903670.html