2017-07-25 57 views
0

我正在使用glob获取目录中的文件列表。与Glob排除文件

foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){ 
     $filename = basename($filename); 
     echo "<option value='" . $filename . "'>".$filename."</option>"; 
    } 

让我们说,在我的目录中的文件列表是遵循

data-financebyyear.php 
data-finance.php 
data-hrbyyear.php 

如何排除所有byyear在文件名的文件吗?

我尝试过这样的事情和它不工作..所有文件仍显示

foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){ 
     $filename = basename($filename); 
     if (strpos($filename, 'byyear') !== false) { 
     echo "<option value='" . $filename . "'>".$filename."</option>"; 
     } 
    } 
+2

'如果(strpos($文件名, 'byyear')===假)'' –

+0

!=='表示'byyear'将出现在文件名中。 –

+0

非常感谢@ u_mulder.got它 – gtroop

回答

0
foreach(glob(dirname(__FILE__) . '/{data-,list-}*.{php}', GLOB_BRACE) as $filename){ 
     $filename = basename($filename); 
     if (strpos($filename, 'byyear') === false) { 
     echo "<option value='" . $filename . "'>".$filename."</option>"; 
     } 
    }