ホームページ  >  記事  >  バックエンド開発  >  PHP を使用してディレクトリ内のファイルを数えるにはどうすればよいですか?

PHP を使用してディレクトリ内のファイルを数えるにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-05 16:39:02529ブラウズ

How to Count Files in a Directory Using PHP?

PHP を使用したディレクトリ内のファイルの数

プロジェクトで、特定のディレクトリ内のファイルの数を調べようとしています。 PHP を使用してこれを実現する方法を詳しく見てみましょう。

最初に提供したコードは、readdir() 関数を使用してディレクトリ内を反復処理します。ただし、隠しファイルやサブディレクトリは考慮されていません。これに対処するには、次の洗練されたアプローチを使用できます。

<code class="php">$dir = opendir('uploads/'); # Directory to count files from
$i = 0; # Initialize counter
$excludedFiles = ['.', '..']; # Ignore these files

# Iterate through the directory
while (false !== ($file = readdir($dir))) {
    if (!in_array($file, $excludedFiles) && !is_dir($file)) {
        $i++;
    }
}

closedir($dir);
echo "There were $i files"; # Output the count</code>

隠しファイル (「.」で始まる) とサブディレクトリ (is_dir() によって決定される) を除外することで、この修正されたコードは通常のファイルのみを正確にカウントします。

または、次のようなより簡潔なアプローチを使用することもできます。 FilesystemIterator:

<code class="php">$fi = new FilesystemIterator(__DIR__, FilesystemIterator::SKIP_DOTS);
printf("There were %d Files", iterator_count($fi));</code>

ここで、FilesystemIterator クラスは隠しファイル (.) と親ディレクトリ (..) をスキップし、ファイルをカウントするための簡単なソリューションになります。どちらの方法でも、好みに応じて、ディレクトリ内のファイルを正確かつ効率的にカウントできます。

以上がPHP を使用してディレクトリ内のファイルを数えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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