首页 > 代码库 > php文件遍历类:FileBianli.class.php
php文件遍历类:FileBianli.class.php
1 <?php 2 3 class FileBianli{ 4 private $dirname; 5 private $dirsize=0; 6 private $totalsize=0;//当前目录大小 7 8 9 function bianliDir($dirname){10 11 $dir=opendir($dirname);12 13 while($fileName=readdir($dir)){14 if($fileName!="." && $fileName!=".."){15 $file=$dirname.‘/‘.$fileName;16 if(is_dir($file)){17 echo "<font color=‘red‘>".$fileName."-".date("Y-m-d H:i:s")."-".filetype($file)."-".$this->toSize($this->dirsize($file))."-</font><br>";18 $totalsize+=$this->dirsize($file);19 }else{20 echo "<font color=‘blue‘>".$fileName."-".date("Y-m-d H:i:s")."-".filetype($file)."-".$this->toSize(filesize($file))."-</font><br>";21 $totalsize+=filesize($file);22 }23 }24 }25 closedir($dir);26 echo $dirname."共计大小为:".$this->toSize($totalsize)."<br>";27 return true;28 }29 30 31 //将字节转换成GB,MB,KB,BYTE32 function toSize($size){33 $dw="Bytes";34 if($size > pow(2,30)){35 $size=round($size/pow(2,30),2);36 $dw="GB";37 }else if($size > pow(2,20)){38 $size=round($size/pow(2,20),2);39 $dw="MB";40 }else if($size > pow(2,10)){41 $size=round($size/pow(2,10),2);42 $dw="KB";43 }else{44 $dw="bytes";45 }46 return $size.$dw;47 48 }49
//计算目录的大小50 function dirsize($dirname){51 52 $dir=opendir($dirname);53 54 while($filename=readdir($dir)){55 $file=$dirname."/".$filename;56 if($filename!="." && $filename!=".."){57 if(is_dir($file)){58 $this->dirsize($file);//递归完成59 }else{60 $dirsize+=filesize($file);61 }62 }63 }64 65 closedir($dir);66 return $dirsize;67 }68 }69 ?>
php文件遍历类:FileBianli.class.php
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。