PHP删除目录及目录下所有文件的方法详解
程序员文章站
2022-04-08 17:25:04
函数代码一:删除目录及目录下的所有文件复制代码 代码如下://循环删除目录和文件函数function deldirandfile( $dirname ){if ( $han...
函数代码一:删除目录及目录下的所有文件
//循环删除目录和文件函数
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');
?>
复制代码 代码如下:
//循环删除目录和文件函数
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中如何将数组变量写入文件