Я читаю все файлы в одном каталоге, и я хочу фильтровать JPG, JPEG, GIF и PNG.Проверка расширений файлов в PHP с помощью регулярных выражений
И столица, и маленькие буквы. Это единственные файлы, которые нужно принять.
В настоящее время я использую это:
$testPics = takeFiles($picsDir, "([^\s]+(?=\.(jpg|JPG|jpeg|JPEG|png|PNG|gif|GIF))\.\2)");
и функция takeFiles выглядит следующим образом:
function takerFiles($dir, $rex="") {
$dir .= "/";
$files = array();
$dp = opendir($dir);
while ($file = readdir($dp)) {
if ($file == '.') continue;
if ($file == '..') continue;
if (is_dir($file)) continue;
if ($rex!="" && !preg_match($rex, $file)) continue;
$files[] = $file;
}
closedir($dp);
return $files;
}
И всегда ничего не возвращает. Поэтому что-то не так с моим кодом регулярного выражения.
вам придется бежать точку. – Mark 2008-11-26 15:50:33
Спасибо, Марк, исправлено. D'о! – 2008-11-26 15:55:47
@PhillSacre истек срок действия ссылки на SpawEditor. Не могли бы вы обновить свой ответ? – 2016-12-22 10:56:47