これは、glob の仕事のようです。 、指定されたパターンに一致するファイル名の配列を返します。投稿されたばかりの他の回答を知っていますが、正規表現に代わるものを提供しましょう。
ドキュメントページのトップコメントによると、あなたができることは次のようなものです:
<?php
$dirname = "photos";
$filenames = glob("$dirname/*{380,381,382,383,384,385}*", GLOB_BRACE);
foreach ($filenames as $filename)
{
echo $filename . "<br />";
}
?>
GLOB_BRACE
オプションを使用すると、値のリストを中かっこで指定できます。値を囲むアスタリスクを使用すると、これらの番号をファイル名の任意の場所に表示できます。次に、返された配列を繰り返し処理し、$filename
を使用して必要な操作を実行できます。 。
for
の例を使用できます glob
に渡す文字列を自動的に作成するループ 。
作成したテストディレクトリでこれを実行したときの出力は次のとおりです。
photos/380.zip
photos/asdf382ghj.txt
photos/385.bmp
そこに置いた別のファイルa386b.xlsx
に注意してください 、パターンと一致せず、リストに表示されません。