实例
<?php //统计总目录大小 //echo filesize('./xxoo'); //filesize 用于获取文件大小 但是不能获取文件目录的大小 //如何统计目录大小 //1.打开目录 //2.边路目录的文件得到文件名 //3.得到文件大小,将文件大小累加在一起得到目录大小 //4.关闭目录 $path = '../1225lkd/'; $total = 0; $handle = opendir('../1225lkd'); while($filename = readdir($handle)){ //路径拼接 $path = '../1225lkd/'.$filename; if($filename == '.'||$filename == '..'){ continue; } $total += filesize($path); } echo $total; closedir($handle);
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例
<?php //echo filesize('./xxoo'); //filesize 用于获取文件大小 但是获取目录大小 //统计目录大小 //1.打开目录 //2.遍历目录中的文件得到文件名 //3.返回得到目录的大小 //4.关闭目录 function dirSize($path){ //1.打开xxoo目录 $handle = opendir($path); //var_dump($handle); //定义总大小 $total = 0; //2遍历目录中的文件名 while($filename = readdir($handle)){ //2.1排除两个特殊目录 if($filename == '.' || $filename == '..'){ continue; } //拼接一个完成的路径 $filepath = $path.'/'.$filename; //2.2统计文件大小进行累加 //2.3判断是否为文件 if(is_file($filepath)){ $total += filesize($filepath); } //2.4判断是否为目录,如果是目录则进行操作 if(is_dir($filepath)){ $total += dirSize($filepath); } } return $total; closedir($handle); } echo dirSize('../1225lkd/');
运行实例 »
点击 "运行实例" 按钮查看在线实例