1、删除目录及目录下所有的文件
2、删除目录下的所有文件但目录结构保留
3、删除指定文件
代码如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
/**
+-----------------------------------------------------------------------------------------
* 删除目录及目录下所有文件或删除指定文件
+-----------------------------------------------------------------------------------------
* @param str $path 待删除目录路径
* @param int $delDir 是否删除目录,1或true删除目录,0或false则只删除文件保留目录(包含子目录)
+-----------------------------------------------------------------------------------------
* @return bool 返回删除状态
+-----------------------------------------------------------------------------------------
*/
function delDirAndFile( $path , $delDir = FALSE) {
if ( is_array ( $path )) {
foreach ( $path as $subPath )
delDirAndFile( $subPath , $delDir );
}
if ( is_dir ( $path )) {
$handle = opendir( $path );
if ( $handle ) {
while (false !== ( $item = readdir( $handle ) )) {
if ( $item != "." && $item != ".." )
is_dir ( "$path/$item" ) ? delDirAndFile( "$path/$item" , $delDir ) : unlink( "$path/$item" );
}
closedir ( $handle );
if ( $delDir )
return rmdir ( $path );
}
} else {
if ( file_exists ( $path )) {
return unlink( $path );
} else {
return FALSE;
}
}
clearstatcache();
}
|
这个函数和unlink有什么不一样?如果知道要删除的是一个文件可以直接使用unlink函数,如果不知道要删除的是一个文件还是文件件就可以使用上面的函数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/KillBugMe/p/11850491.html