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