(PHP 4 >= 4.3.0, PHP 5, PHP 7)
fnmatch — Проверяет совпадение имени файла с шаблоном
$pattern
, string $string
[, int $flags = 0
] )
fnmatch() проверяет, совпадает ли переданный параметр
string с указанным шаблоном подстановок оболочки
pattern.
patternШаблон подстановки оболочки операционной системы.
stringПроверяемая строка. Данная функция особенно полезна для имен файлов, но также может быть использована с обычными строками.
Среднестатистический пользователь знаком с подстановками оболочки, как минимум с самыми простыми из них - '?' и '*', так что использование fnmatch() вместо preg_match() для поиска в пользовательской части сайта может быть намного удобнее для пользователей, не являющихся программистами.
flags
Значением параметра flags может быть
любая комбинация следующих флагов, объединенных с помощью
бинарного оператора
ИЛИ (|).
Flag |
Описание |
|---|---|
FNM_NOESCAPE |
Отключить экранирование обратных слешей. |
FNM_PATHNAME |
Слеш в строке совпадает только со слешем в указанном шаблоне. |
FNM_PERIOD |
Ведущая точка в строке должна точно совпадать с точкой в указанном шаблоне. |
FNM_CASEFOLD |
Совпадение без учета регистра. Является частью расширения GNU. |
При совпадении возвращает TRUE, иначе возвращает FALSE.
| Версия | Описание |
|---|---|
| 5.3.0 | Данная функция стала доступной на платформе Windows. |
Пример #1 Проверяет соответствие цвета шаблону подстановки
<?php
if (fnmatch("*gr[ae]y", $color)) {
echo "какая-то форма серого цвета ...";
}
?>
На данный момент эта функция недоступна на POSIX-несовместимых системах, исключая Windows.