PHP Find Files and Recursion
From Code Trash
Find Files in PHP
echo realpath("."); echo "<BR>".$_SERVER['REQUEST_URI']; echo "<BR>".$_SERVER['DOCUMENT_ROOT']; exit; chdir(".."); $r = realpath("."); rec($r); function rec($r) { $list = scanDir($r); echo(realpath(".")); echo "<br>"; for($i = 0; $i< sizeof($list); $i++) { chdir($list[$i]); rec($list[$i]); chdir(".."); } } function scanDir($han) { $handle = opendir(realpath(".")); while (false !== ($lis[] = readdir($handle))) {} for($i=2; $i<sizeof($lis); $i++) if(is_dir($lis[$i])) $diri[] = $lis[$i]; return $diri; }
Recursion example in PHP
<? /*echo realpath("."); echo "<BR>".$_SERVER['REQUEST_URI']; echo "<BR>".$_SERVER['DOCUMENT_ROOT']; echo "<BR>"; */ //exit; //chdir(".."); $root = $_SERVER['DOCUMENT_ROOT']; chdir($root); $r = realpath("."); /* $ll = scandir("."); $ss = scanDir("."); echo gettype($ll); print_r($ll); echo "<hr>"; print_r($ss); exit; */ rec($r); function rec($r) { $list = scanDir($r); echo(realpath(".")); echo "<br>"; for($i = 0; $i< sizeof($list); $i++) { chdir($list[$i]); rec($list[$i]); chdir(".."); } } function scanDir($han) { $handle = opendir(realpath(".")); while (false !== ($lis[] = readdir($handle))) {} for($i=0; $i<sizeof($lis); $i++) if(is_dir($lis[$i])) { if($lis[$i]=='.' || $lis[$i]=='..')continue; $diri[] = $lis[$i]; } if(!is_null($diri)) sort($diri); return $diri; } ?>