2017-08-02 35 views
0

我需要選擇一些文件夾來將它們變成一個數組並計算其內部數量,以動態顯示其中的圖像數量。如何選擇具有正則表達式的文件夾

現在我有一個路徑變量:

$gallery_path = "assets/images/content/referenzen/gallery"; 

從那裏我算一個特定的文件夾內的所有圖像$ gallery_path裏面,像這樣:

$refA_path = "assets/images/content/referenzen/gallery/refA"; 
    $refA = glob($refA_path . '/*.{jpeg,jpg,png}', GLOB_BRACE); 
    echo count($refA); 

我有不同的文件夾命名爲refA,refAb等。我想要做的只是選擇名稱爲ref {number或letter}的文件夾。例如:

$refA_path = "assets/images/content/referenzen/gallery/{all folders with ref*}"; 

在正則表達式中有沒有像這樣的東西來實現這個目標?

+1

使用[glob function](http://php.net/manual/en/function.glob.php)的模式匹配是不夠的? – xander

+0

是@xander確實是對的,不知道。 – d8ta

回答

2

您也可以使用​​3210以及GLOB_ONLYDIR選項。

$paths_array = glob("assets/images/content/referenzen/gallery/ref*", GLOB_ONLYDIR); 
+1

我認爲glob也可以使用像'ref [0-9] *'這樣的字符組匹配,如果一個數字必須出現在名字中。 – xander

+1

@xander當然!但是OP表示名字會像「ref {number or letter}」,但不只是一個字符,因爲例子是「refA」和「refAb」。所以我認爲最好的方法是匹配'ref *'。 – nanocv

+1

是的,ref *會精確地選擇其中的12個文件夾,並保持其中的所有其他文件不變。所以,它的工作原理是我需要它。感謝您的GLOB_ONLYDIR tipp。到目前爲止,我不知道這一點。 – d8ta

相關問題