php自定义函数之递归删除文件及目录

代码如下:

/*―――――――――――――――――― */ 
//C 递归删除文件及目录 
//C 例: del_dir (‘../cache/');注意:返回的/是必须的 
//C $type 强制删除目录, true 是 ,false 否 
/*―――――――――――――――――― */ 
function del_dir ($dir,$type=true) 
{ 
$n=0; 
if (is_dir($dir)) { 
if ($dh = opendir($dir)) { 
while (($file = readdir($dh)) !== false) { 
//.svn 忽略 svn 版本控制信息 
if ( $file == '.' or $file =='..' or $file == '.svn') 
{ 
continue; 
} 
if (is_file ($dir.$file)) 
{ 
unlink($dir.$file); 
$n++; 
} 
if (is_dir ($dir.$file)) 
{ 
del_dir ($dir.$file.'/'); 
if ($type) 
{ 
$n++; 
rmdir($dir.$file.'/'); 
} 
} 
} 
} 
closedir($dh); 
} 
return $n; 
}

相关推荐