Reputation: 1174
Here i Have One Problem to finding out the size of an parent folder:
Here is my sample code:
function foldersize($dir){
$count_size = 0;
$count = 0;
$dir_array = scandir($dir);
foreach($dir_array as $key=>$filename){
if($filename!=".." && $filename!="."){
if(is_dir($dir."/".$filename)){
$new_foldersize = foldersize($dir."/".$filename);
$count_size = $count_size + $new_foldersize[0];
$count = $count + $new_foldersize[1];
}else if(is_file($dir."/".$filename)){
$count_size = $count_size + filesize($dir."/".$filename);
$count++;
}
}
}
return $count_size;
}
Example
If I am having the Folder like the following structure:
mm[30MB]->rr[40MB]->ee[300MB]->ss[309MB]
If i am using the above code to find the size of mm
folder it is showing the size as zero
Anyone Suggest some ideas..........
Upvotes: 2
Views: 2756
Reputation: 1174
Answer is:
function foldersize($dir){
$count_size = 0;
$count = 0;
$dir_array = scandir($dir);
foreach($dir_array as $key=>$filename){
if($filename!=".." && $filename!="."){
if(is_dir($dir."/".$filename)){
$new_foldersize = foldersize($dir."/".$filename);
$count_size = $count_size + $new_foldersize;
}else if(is_file($dir."/".$filename)){
$count_size = $count_size + filesize($dir."/".$filename);
$count++;
}
}
}
return $count_size;
}
Upvotes: 2