preg_match匹配.jpg/.png扩展名的文件

use*_*026 2 php regex arrays

我有一个根文件夹C:/wamp/www//scanner/scanner/.对于如:这个文件夹中包含 的目录 images,work,uploads等我使用功能scan_dir扫描所有我想要排除与这些扩展名的文件的文件夹和子文件夹等.

$except = array("rar", "zip", "mp3", "mp4", "mp3", "mov", "flv", "wmv", "swf", "png", "gif", "jpg", "bmp", "avi");
Run Code Online (Sandbox Code Playgroud)

请任何人都可以帮助我.

xda*_*azz 6

像下面的东西?

$except = array("rar", "zip", "mp3", "mp4", "mp3", "mov", "flv", "wmv", "swf", "png", "gif", "jpg", "bmp", "avi");

if (!preg_match('/\.('.implode('|', $except).')$/', $filename, $matches)) {
  // ...
}
Run Code Online (Sandbox Code Playgroud)


Bor*_*ora 5

试试这个:

$except = array("rar", "zip", "mp3", "mp4", "mp3", "mov", "flv", "wmv", "swf", "png", "gif", "jpg", "bmp", "avi");
$imp = implode('|', $except);

foreach($files as $file)
{
    if(preg_match('/^.*\.('.$imp.')$/i', $file))
        echo $file;
}
Run Code Online (Sandbox Code Playgroud)