本文目录一览:
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
/*
*
*
删除指定目录中的所有目录及文件(或者指定文件)
*
可扩展增加一些选项(如是否删除原目录等)
*
删除文件敏感操作谨慎使用
*
@param
$dir
目录路径
*
@param
array
$file_type指定文件类型
*/
function
delFile($dir,$file_type='')
{
if(is_dir($dir)){
$files
=
scandir($dir);
//打开目录
//列出目录中的所有文件并去掉
.
和
..
foreach($files
as
$filename){
if($filename!='.'
$filename!='..'){
if(!is_dir($dir.'/'.$filename)){
if(empty($file_type)){
unlink($dir.'/'.$filename);
}else{
if(is_array($file_type)){
//正则匹配指定文件
if(preg_match($file_type[0],$filename)){
unlink($dir.'/'.$filename);
}
}else{
//指定包含某些字符串的文件
if(false!=stristr($filename,$file_type)){
unlink($dir.'/'.$filename);
}
}
}
}else{
delFile($dir.'/'.$filename);
rmdir($dir.'/'.$filename);
}
}
}
}else{
if(file_exists($dir))
unlink($dir);
}
}
delFile(dirname(__FILE__),'html');
希望本文所述对大家的php程序设计有所帮助。
php实现删除空目录的方法
本文实例讲述了php实现删除空目录的方法。分享给大家供大家参考。具体分析如下:
php中可以通过rmdir()函数删除一个空目录
?php
if
(file_exists("/temp/test"))
{
rmdir("/temp/test");
print("Directory
removed.\n");
}
else
{
print("Directory
does
not
exist.\n");
}
?
上面的代码第一次执行会返回
Directory
removed.
第二次执行,由于目录已经被删除,会返回
Directory
does
not
exist.
希望本文所述对大家的php程序设计有所帮助。