谁有遍历文件夹的代码?给定一个目录,能打印该目录下的文件和目录,并能把所有子目录的文件夹和文件详细情况打印出来(大小,创建时间,最后更新时间),

解决方案 »

  1.   

    <?phplistDir('你需要列表的目录');function listDir($dirStr) {

    $path = explode(DIRECTORY_SEPARATOR, $dirStr);
    $filename = array_pop($path);
    $parent = array_pop($path);
    $nbspRepeat = strlen(implode('', $path));
    $nbsps = str_repeat('&nbsp;', $nbspRepeat);
    $lineTime = strlen($parent);
    $lines = $lineTime > 0 ? '|' . str_repeat('-', $lineTime - 1) : '';


    if(is_dir($dirStr)) {

    echo $nbsps, $lines, $filename, '<br />';  
    $h = opendir($dirStr);

    while($s = readdir($h)) {

    if($s != '.' && $s != '..') {

    $s = $dirStr . DIRECTORY_SEPARATOR . $s;
    listDir($s);
    }
    }
    } else {

    echo $nbsps, $lines, $filename, ' (大小:', filesize($dirStr), ' 创建:', date('Y-m-d H:i:s', filectime($dirStr)), ' 修改:', date('Y-m-d H:i:s', filemtime($dirStr)), ')<br />';  
    return;
    }
    }
    ?>