天天看點

PHP遞歸周遊目錄

PHP實作遞歸周遊目錄

<?php
/**
 * 遞歸周遊目錄
 * @param string $path 目錄所在路徑
 * @param int $deep 遞歸調用的深度 預設為0
 * @return string 輸出目前目錄及子目錄的所有檔案
 */
function recursivereaddirs($path,$deep = )
{
    $dirHandle = opendir($path);
    while( false !== ($file = readdir($dirHandle)) ){
        if( $file != '.' && $file != '..'  ){
            //讓檔案輸出更有層次感
            echo str_repeat('-', $deep*) . $file . '<br/>';
            //判斷目前檔案是否為目錄
            if( is_dir($path . '/' . $file) ){
                //遞歸點 遞歸調用周遊目錄
                recursivereaddirs($path . '/' . $file, $deep + );
            }
        }
    }
    closedir($dirHandle);
}
//調用遞歸周遊
recursivereaddirs('./');
?>
           

效果如圖所示:

PHP遞歸周遊目錄