(PHP 4 >= 4.3.0, PHP 5, PHP 7)
fnmatch — Проверяет совпадение имени файла с шаблоном
$pattern
, string $string
[, int $flags
= 0
] ) : bool
fnmatch() проверяет, совпадает ли переданный параметр
string
с указанным шаблоном подстановок оболочки
pattern
.
pattern
Шаблон подстановки оболочки операционной системы.
string
Проверяемая строка. Данная функция особенно полезна для имен файлов, но также может быть использована с обычными строками.
Среднестатистический пользователь знаком с подстановками оболочки, как минимум с самыми простыми из них - '?' и '*', так что использование fnmatch() вместо preg_match() для поиска в пользовательской части сайта может быть намного удобнее для пользователей, не являющихся программистами.
flags
Значением параметра flags
может быть
любая комбинация следующих флагов, объединенных с помощью
бинарного оператора
ИЛИ (|).
Флаг |
Описание |
---|---|
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.