The PHP code below goes through a directory/folder recursively and display the files found as HTML links on a web page.
// Configuration $cDrivePath = "C:\\inetpub\\site3\\filelibrary\\"; // Be sure to include slash at the end! $webPath = "/filelibrary/"; // Be sure to include slash at the end! // End configuration function cleanUpFileName($fName, $removeThisString) { $ret = $fName; $ret = str_replace($removeThisString, "", $ret); $ret = str_replace("\\", " > ", $ret); return $ret; } function printDirContents( $path, // This is the HDD path to recurse into $cDrivePath, // Always carry the $cDrivePath value; used for beautifying text $webPath // Always carry the $webPath value; used for beautifying text ) { // Make sure we have a trailing slash and asterix $path = rtrim($path, "\\") . "\\*"; // Make an array to hold all the sub-directories $dirs = glob($path, GLOB_ONLYDIR); // Make an array to hold all the files $files = glob($path); //This contains both sub-directories and files $files = array_diff($files, $dirs); // Remove sub-directories from the array // Print files foreach ($files as &$f) { $fnDownload = str_replace($cDrivePath, "", $f); $fnDisplay = cleanUpFileName($f, str_replace("*","",$path)); print("[a href='".$webPath.$fnDownload."']".$fnDisplay."[/a]"); } // Recurse into sub-directories foreach ($dirs as &$d) { print("[h3]".(cleanUpFileName($d, $cDrivePath))."[/h3]"; // Print folder printDirContents($d, $cDrivePath, $webPath); } } $displayArray = printDirContents($cDrivePath, $cDrivePath, $webPath);