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

yipeiwu_com6年前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');
?>

相关文章

PHP设计模式之观察者模式定义与用法示例

本文实例讲述了PHP设计模式之观察者模式定义与用法。分享给大家供大家参考,具体如下: <?php /** * Interface Observable * defi...

php json_encode值中大括号与花括号区别

1.当array是一个从0开始的连续数组时,json_encode出来的结果是一个由[]括起来的字符串 而当array是不从0开始或者不连续的数组时,json_encode出来的结果是一...

PHP+SQL 注入攻击的技术实现以及预防办法

总结一下经验。在我看来,引发 SQL 注入攻击的主要原因,是因为以下两点原因:   1. php 配置文件 php.ini 中的 magic_quotes_gpc 选项没有打开,被置为...

php实现保存周期为1天的购物车类

本文实例为大家分享了php购物车类的具体代码,供大家参考,具体内容如下 购物车类 Cookies 保存,保存周期为1天 注意:浏览器必须支持Cookie才能够使用 示例代码: <...

PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用

PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用

思维导图 介绍   前几篇系列文章,我比较关注的是<PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数>,但是我觉得我还是没有说清楚,我自己也有很多不理解的地方,...