ホームページ >バックエンド開発 >PHPチュートリアル >PHP の glob() 関数は、ファイルまたはディレクトリを検索するために使用されます。

PHP の glob() 関数は、ファイルまたはディレクトリを検索するために使用されます。

WBOY
WBOYオリジナル
2023-11-18 18:17:221369ブラウズ

PHP の glob() 関数は、ファイルまたはディレクトリを検索するために使用されます。

PHP の glob() 関数は、ファイルまたはディレクトリを検索するために使用され、強力なファイル操作関数です。指定されたパターン一致に基づいてファイルまたはディレクトリのパスを返すことができます。

glob() 関数の構文は次のとおりです。

glob(pattern, flags)

このうち、pattern は照合するパターン文字列を表します。 *.txt (.txt で終わるファイルと一致) などのワイルドカード表現、または特定のファイル パスを指定できます。 flags は、関数の動作を制御するために使用されるオプションのパラメーターです。

glob() 関数の使用法を説明するために、いくつかの具体的なコード例を見てみましょう。

例 1: 指定されたディレクトリ内のすべてのファイルを検索する

$files = glob('/var/www/html/*');
foreach ($files as $file) {
    echo $file . '<br>';
}

このコードは、指定されたパス /var/www/html にあるすべてのファイルを検索し、そのパスを出力します。この例ではワイルドカード式を使用せず、ディレクトリ パスを直接指定していることに注意してください。

例 2: 指定されたサフィックス名に一致するファイル

$files = glob('/var/www/html/*.txt');
foreach ($files as $file) {
    echo $file . '<br>';
}

このコードは、指定されたパス /var/www/html で .txt で終わるすべてのファイルを検索し、そのパスを追加して出力します。ここではワイルドカード表現 *.txt が使用されています。

例 3: 指定されたディレクトリ内のすべてのファイルを再帰的に検索

function getAllFiles($dir) {
    $files = glob($dir . '/*');
    foreach ($files as $file) {
        if (is_dir($file)) {
            getAllFiles($file);
        } else {
            echo $file . '<br>';
        }
    }
}

getAllFiles('/var/www/html');

このコードは、再帰を使用して、指定されたディレクトリ内のすべてのファイルを検索します。まずディレクトリ内のすべてのファイルとサブディレクトリを取得し、次にサブディレクトリごとに getAllFiles() 関数を呼び出して再帰的検索を実行します。

例 4: 指定されたディレクトリの下にあるすべてのディレクトリを検索する

$directories = glob('/var/www/html/*', GLOB_ONLYDIR);
foreach ($directories as $directory) {
    echo $directory . '<br>';
}

このコードは、指定されたパス /var/www/html の下にあるすべてのサブディレクトリを検索し、そのパスを出力します。 flags パラメータを GLOB_ONLYDIR に設定すると、ディレクトリのみを照合できます。

要約すると、glob() 関数は、PHP でファイルやディレクトリを検索するのに非常に便利です。指定されたパターン マッチングに基づいて必要なファイルやディレクトリを柔軟に見つけることができ、さまざまなニーズを満たすためにさまざまな使用方法とパラメーター オプションを提供します。ファイル操作でもディレクトリ トラバーサルでも、glob() 関数は非常に便利で効率的なツールです。

以上がPHP の glob() 関数は、ファイルまたはディレクトリを検索するために使用されます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。