ホームページ >バックエンド開発 >PHPチュートリアル >PHP で glob 関数を使用して、指定されたパターンに一致するファイルのリストを取得する方法
PHP では、指定したパターンに一致するファイルのリストを取得したい場合は、glob 関数を使用できます。 glob 関数は、指定されたパターンに一致するすべてのファイルのファイル名またはパスのリストを返すことができます。
glob 関数の構文は次のとおりです:
array glob ( string $pattern [, int $flags = 0 ] )
このうち、$pattern パラメーターは、一致するファイル パターンを指定します。これには、ワイルドカード (*、? など) を含めることができます。 。 $flags パラメータはオプションであり、ディレクトリを取得するときにファイル タイプやその他のオプションを考慮するように glob 関数に指示するために使用できます。
以下は、glob 関数を使用してすべての txt ファイルのファイル名リストを取得する方法を示す簡単な例です:
$files = glob("*.txt"); foreach ($files as $file) { echo $file . "<br>"; }
この例では、一致パターンを「*」に設定します。 .txt 」、これは拡張子「txt」を持つすべてのファイルを取得することを意味します。 glob 関数は、パターンに一致するすべてのファイルのファイル名のリストを返します。次に、foreach ループを使用してこのリストを反復処理し、各ファイルのファイル名を 1 つずつ出力します。
基本的なワイルドカードに加えて、パターンにディレクトリ パスを含めることもできます。たとえば、「*.txt」という名前のすべてのファイルを取得する必要があり、これらのファイルが「/home/user/files/」ディレクトリにある場合、次のコードを使用できます。たとえば、ディレクトリ パス「/home/user/files/」を指定し、ワイルドカードとファイル拡張子を追加しました。 glob 関数は、パターンに一致するすべてのファイルのファイル名のリストを返します。
拡張子「jpg」または「png」を持つすべての画像ファイルを取得したい場合は、次のコードを使用できます:
$files = glob("/home/user/files/*.txt"); foreach ($files as $file) { echo $file . "<br>"; }
ここでは、中括弧を使用して拡張子 A リストを作成します。名前の数 (つまり、「{jpg,png}」)。また、GLOB_BRACE フラグを glob 関数に渡して、中括弧を拡張子のリストとして解釈する必要があることを示します。このようにして、glob 関数は、拡張子「jpg」または「png」を持つすべてのファイルのファイル名のリストを返します。
上記のいくつかの使用法に加えて、glob 関数は、ディレクトリの再帰的検索、結果のフィルタリングなど、他の多くのオプションや関数もサポートしています。詳細と例については、PHP ドキュメントを参照してください。
以上がPHP で glob 関数を使用して、指定されたパターンに一致するファイルのリストを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。