ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用してディレクトリ内のファイルを数える方法: Opendir/Readdir と FilesystemIterator の比較?
PHP でディレクトリ内のファイルを数える
PHP でディレクトリを操作する場合、ディレクトリ内に存在するファイルの数を確認すると便利なことがよくあります。これを実現するには、いくつかの方法が利用可能です。
方法 1: Opendir() と Readdir() を使用する
従来のアプローチでは、opendir() と readdir() を使用します。 ) 機能。これらの関数では、明示的なディレクトリ パスの操作とファイルに対する手動の反復が必要です。提供したコード スニペットに見られるように:
<code class="php">$dir = opendir('uploads/'); $i = 0; while (false !== ($file = readdir($dir))) { if (!in_array($file, array('.', '..') and !is_dir($file)) $i++; } echo "There were $i files";</code>
このメソッドは機能しますが、特定の状況では面倒になる可能性があります。
方法 2: SPL FilesystemIterator を使用する
より現代的な代替方法は、SPL FilesystemIterator クラスを利用することです。このイテレータにより、より便利で効率的なディレクトリ スキャンが可能になります。次に例を示します。
<code class="php">$fi = new FilesystemIterator(__DIR__, FilesystemIterator::SKIP_DOTS); printf("There were %d Files", iterator_count($fi));</code>
このコード内:
このメソッドはコードを簡素化し、ディレクトリ内のファイルをカウントするためのより洗練されたソリューションを提供します。ディレクトリ。
以上がPHP を使用してディレクトリ内のファイルを数える方法: Opendir/Readdir と FilesystemIterator の比較?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。