PHP删除目录及目录下所有文件的方法详解

yipeiwu_com7年前PHP代码库
函数代码一:删除目录及目录下的所有文件
复制代码 代码如下:

//循环删除目录和文件函数
function delDirAndFile( $dirName )
{
if ( $handle = opendir( "$dirName" ) ) {
while ( false !== ( $item = readdir( $handle ) ) ) {
if ( $item != "." && $item != ".." ) {
if ( is_dir( "$dirName/$item" ) ) {
delDirAndFile( "$dirName/$item" );
} else {
if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item
\n”;
}
}
}
closedir( $handle );
if( rmdir( $dirName ) )echo “成功删除目录: $dirName
\n”;
}
}
?>

函数代码二:仅删除指定目录下的文件,不删除目录文件夹。
复制代码 代码如下:

//循环目录下的所有文件
function delFileUnderDir( $dirName )
{
if ( $handle = opendir( "$dirName" ) ) {
while ( false !== ( $item = readdir( $handle ) ) ) {
if ( $item != "." && $item != ".." ) {
if ( is_dir( "$dirName/$item" ) ) {
delFileUnderDir( "$dirName/$item" );
} else {
if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item
\n”;
}
}
}
closedir( $handle );
}
}
?>

使用方法示例:
假设需要删除一个名叫”upload”的同级目录即此目录下的所有文件,你可以通过以下代码完成:
复制代码 代码如下:

delDirAndFile( 'upload');
?>
假设需要删除一个名叫”upload”目录下的所有文件(但无需删除目录文件夹),你可以通过以下代码完成:
delFileUnderDir( 'upload');
?>

相关文章

浅析SVN常见问题及解决方法

黄色感叹号(有冲突):--这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不允许你提交,防止你的...

PHP正则的Unknown Modifier错误解决方法

如下正则: $a='2<span><nobr>tóng<span class="h">dòng</span></nobr>...

php错误级别的设置方法

PHP在运行时, 针对严重程度不同的错误,会给以不同的提示。 eg:在$a没声明时,直接相加,值为NULL,相加时当成0来算.但是,却提示NOTICE,即注意. 我们在开发中, 为了程序...

深入php socket的讲解与实例分析

在这一章里你将了解到迷人而又让人容易糊涂的套接字(Sockets)。Sockets在PHP中是没有充分利用的功能。今天你将看到产生一个能使用客户端连接的服务器,并在客户端使用socket...

PHP输出数组中重名的元素的几种处理方法

1.可以直接用php的内置函数array_intersect() array array_intersect ( array $array1 , array $array2 [, arr...