初心者のための簡単な質問で、私の Google-Fu は失敗しています。PHP を使用して、特定のディレクトリ内のファイルの数を、サブディレクトリ (およびそれらが持つ可能性のあるサブディレクトリなど) を含めてどのように数えることができますか? たとえば、ディレクトリ構造が次のようになっている場合:
/Dir_A/ /Dir_A/File1.blah /Dir_A/Dir_B/ /Dir_A/Dir_B/File2.blah /Dir_A/Dir_B/File3.blah /Dir_A/Dir_B/Dir_C/ /Dir_A/Dir_B/Dir_C/File4.blah /Dir_A/Dir_D/ /Dir_A/Dir_D/File5.blah
スクリプトは、「./Dir_A」に対して「5」を返す必要があります。
私は次のことをまとめましたが、正しい答えを返していません。その理由はわかりません:
function getFilecount( $path = '.', $filecount = 0, $total = 0 ){
$ignore = array( 'cgi-bin', '.', '..', '.DS_Store' );
$dh = @opendir( $path );
while( false !== ( $file = readdir( $dh ) ) ){
if( !in_array( $file, $ignore ) ){
if( is_dir( "$path/$file" ) ){
$filecount = count(glob( "$path/$file/" . "*"));
$total += $filecount;
エコー $filecount; /* デバッグ */
echo "$total"; /* デバッグ */
echo " $path/$file
"; /* デバッグ */
getFilecount( "$path/$file", $filecount, $total);
}
}
}
$合計を返します。
}
助けていただければ幸いです。