64

これが私の現在のコードです:

$files = glob("*.jpg");

これはうまくいきます。ただし、.png、gif などの他の画像タイプをリストしたいと考えています。

上記のコードを修正して機能させるために、助けてください。次のことを試しましたが、成功しませんでした:

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

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

そして、他のバリエーション...

4

5 に答える 5

145
$files = glob("*.{jpg,png,gif}", GLOB_BRACE);
于 2012-05-14T21:48:09.873 に答える
1

2021年05月

これは@Jeroenの回答の単なる拡張です。

心に留めておくべきこと

「フラグ」は重要です

中括弧を使用しているため、GLOB_BRACE必須であることに注意してください。フラグがないと、アイテムが空の配列を取得します

$files = glob("*.{jpg,png,gif}", GLOB_BRACE);

並べ替え

これは、作成した方法でファイルをソートするのにも役立ちます。

$files = glob("*.{jpg,png,gif}", GLOB_BRACE);
xx.jpg
xx.jpg
xx.png
xx.gif
xx.gif

$files = glob("*.{gif,jpg,png}", GLOB_BRACE);
xx.gif
xx.gif
xx.jpg
xx.jpg
xx.png

+ ボーナス

すべてのファイルを一覧表示する必要があるが、フォルダーがない場合は、これを使用できます

$files = glob("*.{*}", GLOB_BRACE);
于 2021-05-07T04:40:55.690 に答える