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('./');
?>
效果如圖所示:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX3lEVNBTQE9EMNpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DN2cTNyIDMyETNxUDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)