This article describes how to use php to calculate the folder size recursively. the code is very simple and recommended here. The method is very simple. here there is not much nonsense, and the code is provided directly:
The code is as follows:
Protected function dir_size ($ dir ){
$ Dh = opendir ($ dir); // open the directory and return a directory stream.
$ Size = 0; // The initial size is 0.
While (false! ==( $ File = @ readdir ($ dh) {// read objects in the directory cyclically
If ($ file! = '.' And $ file! = '..'){
$ Path = $ dir. '/'. $ file; // you can specify a directory that contains subdirectories.
If (is_dir ($ path )){
$ Size + = $ this-> dir_size ($ path); // recursive call, calculate the directory size
} Elseif (is_file ($ path )){
$ Size + = filesize ($ path); // calculate the file size
}
}
}
Closedir ($ dh); // Close the directory stream
Return $ size; // return size
}