Steps:
1. Traverse Directory and subdirectories
2. Use Scandir to determine whether the directory is empty, empty, and use rmdir to delete it.
<?php
/** Delete all empty directory
* @param String $path directory path
/
function Rm_empty_dir ($path) {
if Is_dir ($path ) && ($handle = Opendir ($path))!==false {while
($file =readdir ($handle))!==false) { //Traverse folder
if ( $file!= '. ' && $file!= '. ') {
$curfile = $path. ' /'. $file; Current directory
if (Is_dir ($curfile)) { //directory
Rm_empty_dir ($curfile); If the directory continues to traverse if
(count (Scandir ($curfile)) ==2) {//directory is empty, =2 is because. Existence of
rmdir ($curfile); Delete Empty Directory
}}}
closedir ($handle);
} $folder = ' destination folder ';
Rm_empty_dir ($folder);
? >
Using a shell is a lot simpler:
Find target folder-mindepth 1-depth-empty-type d-exec rm-r {} \;
See more highlights of this column: http://www.bianceng.cnhttp://www.bianceng.cn/webkf/PHP/