2017-07-25 89 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>"; 
     } 
    }