php遍歷目錄并返回統(tǒng)計目錄大小

字號:


    代碼如下:
    <?php
    $dirname = test1;
    //mkdir($dirname);
    //遍歷一層目錄
    function listdir($dirname) {
    $ds = opendir($dirname);
    while($file = readdir($ds)) {
    $path = $dirname.'/'.$file;
    if(is_dir($file)) {
    echo dir:.$file.<br>;
    if($file != . && $file != ..) {
    listdir($file);
    }
    }
    else {
    echo file:.$file . <br>;
    }
    }
    }
    function totdir($dirname) { //對listdir稍加修改
    static $tot = 0;
    $ds = opendir($dirname);
    while($file = readdir($ds)) {
    $path = $dirname.'/'.$file;
    if(is_dir($file)) {
    //echo dir:.$file.<br>;
    if($file != . && $file != ..) {
    $tot += totdir($file);
    }
    }
    else {
    //echo file:.$file . <br>;
    $tot += filesize($path);
    }
    }
    //返回總計
    return $tot;
    }
    listdir($dirname);
    echo totdir($dirname). bytes;
    ?>