[snip] Can anybody help me to open all subdirectories in a directory, I used is_dir() to check whether it is a dir, and if yes, I recursively called it with the new dir name. But all subdirectories are not open the recursion is not working for more than 1 level. I tested it in windows server. Expecting your help, Jacob. [/snip]
I use this on a slackware box. I jacked the code from the man page for filesize() and cleaned it up. It's more for finding the size of a directory, but it does recursively scan through them and I'm sure you can mod it up to fite your needs. function funcGetDirSize($dirDirectory) { $intSizeInBytes = 0; $intNumFilesScanned = 0; $intNumDirsScanned = 0; if ($handle = @opendir($dirDirectory)) { while ($file = readdir($handle)) { if($file != "." && $file != "..") { if(@is_dir($dirDirectory."/".$file)) { $arrCurDirInfo = funcGetDirSize($dirDirectory."/".$file); $intSizeInBytes += $arrCurDirInfo[2]; $intNumFilesScanned += $arrCurDirInfo[0]; $intNumDirsScanned += $arrCurDirInfo[1]; $intNumDirsScanned++; } else { $intSizeInBytes += @filesize($dirDirectory."/".$file); $intNumFilesScanned++; } } } closedir($handle); } $arrDirInfo[0] = $intNumFilesScanned; $arrDirInfo[1] = $intNumDirsScanned; $arrDirInfo[2] = $intSizeInBytes; return $arrDirInfo; } -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php