PHP遍历目录返回统计目录大小实例

分享一个 PHP遍历目录并返回统计目录大小的方法。
代码:

<?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); 

} 

} www.jbxue.com

else { 

//echo "FILE:".$file . "<br>"; 

$tot += filesize($path); 

} 

}



//返回总计 

return $tot; 

}



listdir($dirname);



echo totdir($dirname)." bytes";



?>

你可能感兴趣的:(PHP)