Файловая система
PHP Manual

fnmatch

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

fnmatchПроверяет совпадение имени файла с шаблоном

Описание

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

fnmatch() проверяет, совпадает ли переданный параметр string с указанным шаблоном подстановок оболочки pattern.

Список параметров

pattern

Шаблон подстановки оболочки операционной системы.

string

Проверяемая строка. Данная функция особенно полезна для имен файлов, но также может быть использована с обычными строками.

Среднестатистический пользователь знаком с подстановками оболочки, как минимум с самыми простыми из них - '?' и '*', так что использование fnmatch() вместо preg_match() для поиска в пользовательской части сайта может быть намного удобнее для пользователей, не являющихся программистами.

flags

Значением параметра flags может быть любая комбинация следующих флагов, объединенных с помощью бинарного оператора ИЛИ (|).

Перечень возможных флагов для функции fnmatch()
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.

Смотрите также


Файловая система
PHP Manual