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 サイトの他の関連記事を参照してください。