2013-03-03 44 views
0

我試圖設置一個包含目錄中所有圖像文件的數組,我的index.php設置在與圖像相同的目錄中。使用代碼IM是glob()返回一個空數組

$images = glob("*.jpg, *jpeg, *.png, *.gif"); 

var_dump($images); 

返回 - 在瀏覽器array(0) { } ..任何想法什麼即時做錯了什麼?

對不起,如果這是這樣一個明顯的問題IM仍然很綠到PHP

+0

你很可能得指定完整路徑。 – Anonymous 2013-03-03 20:53:40

+0

即使圖像文件與腳本文件位於同一目錄中,也必須完成此操作嗎? – sam 2013-03-03 20:55:40

+1

請再次參閱['glob()'](http://php.net/glob)手冊頁。只是用逗號引用不是用於指定替代文件擴展名的有效語法。 – mario 2013-03-03 20:56:50

回答

1

您應該使用GLOB_BRACE從PHP文檔:

所有路徑名根據匹配模式的水珠()函數搜索libc glob()函數使用的規則,這與常見shell使用的規則類似。

GLOB_BRACE - 展開{A,B,C}匹配 'A', 'B' 或 'C'

例子:

$directory = __DIR__; 
$images = glob("$directory/*.{jpg,jpeg,png,gif}", GLOB_BRACE); 
var_dump($images);