php递归遍历目录并返回统计目录大小

发布时间:2020-11-16编辑:脚本学堂
php递归算法遍历目录,并返回统计目录大小的一段代码,学习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.jb200.com
else {
//echo "FILE:".$file . "<br>";
$tot += filesize($path);
}
}
//返回总计
return $tot;
}
listdir($dirname);
echo totdir($dirname)。" bytes";
?>