php目录删除
A. 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');
?>
B. 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程序设计有所帮助。
C. 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程序设计有所帮助。
D. php怎样删除目录及其目录下的所有文件
对于一个不是空的目录丹但要删除它怎么办?思路是先必须将该目录下的子文件都删除,让它变成一个空目录,然后再用rmdir()函数删除即可。而该目录下的子目录如果不是空也要用这样的方法来删除才行。 php删除目录代码示例精简、稳定、调用方便,支持多级目录删除,代码如下:<?php//删除目录函数 function del_dir($DelPath){ $wm_chief = new del_directory(); $wm_chief_ok = $wm_chief -> wm_chief_delpath($DelPath); return $wm_chief_ok;}//删除目录class del_directory{ function wm_chief_delpath($del_path){ if(!file_exists($del_path)){ //目标目录不存在则建立 echo "Directory not found."; return false;}$hand = @opendir($del_path);$i = 0;while($file = @readdir($hand)){$i++;if($file!="." && $file!=".."){//目录 if(is_dir($del_path."/".$file)){ $del_s_path = $del_path."/".$file; $this -> wm_chief_delpath($del_s_path);}else{$del_file = $del_path."/".$file; $this -> wm_chief_file($del_file);}}}@closedir($hand); >
E. php怎么删除文件夹和文件夹下的所有文件
正常的思路来说,先循环删除文件夹下的所有文件,当没有文件时再删除文件夹,如果你要删除文件夹和所有文件直接本地删除就好了,但是一般没有这种操作。删除文件可以用unlink($filepath)函数,$filepath是文件路径,然后还有一个封装函数rm_empty_dir($path)删除所有空目录:
/** 删除所有空目录
* @param String $path 目录路径
*/
function rm_empty_dir($path){
if(is_dir($path) && ($handle = opendir($path))!==false){
while(($file=readdir($handle))!==false){// 遍历文件夹
if($file!='.' && $file!='..'){
$curfile = $path.'/'.$file;// 当前目录
if(is_dir($curfile)){// 目录
rm_empty_dir($curfile);// 如果是目录则继续遍历
if(count(scandir($curfile))==2){//目录为空,=2是因为.和..存在
rmdir($curfile);// 删除空目录
}
}
}
}
closedir($handle);
}
}
具体的还要你自己稍加修改,希望可以帮到你。
F. PHP 删除目录下的文件
PHP删除指定目录下的文件示例:
<?php
//定义删除文件函数
functiondeleteFile($dirName){
//判断是否为有效句柄
if($handle=opendir($dirName)){
//循环打开的句柄条目(打开成功,则返回文件名;打开失败,则返回false)
while(false!==($item=readdir($handle))){
if($item!="."&&$item!=".."){
//判断是否为目录
if(is_dir($dirName."/".$item)){
//递归删除
deleteFile($dirName."/".$item);
}else{
if(unlink($dirName."/".$item)){
echo"成功删除{$dirName}文件夹下的{$item}文件<br/>";
}
}
}
}
//关闭打开的句柄
closedir($handle);
}
}
//测试【testFile目录下有NewFile.html】
deleteFile("testFile");
//成功删除testFile文件夹下的NewFile.html文件
?>
G. php中怎么删除指定目录下的文件夹
示例代码如下:
<?php
$dir='你要删除的目录路径';//如下:
//$dir=$_SERVER['DOCUMENT_ROOT'].'/cache';
rmdirs($dir);
//php删除指定目录下的的文件-用PHP怎么删除某目录下指定的一个文件?
functionrmdirs($dir){
$dir_arr=scandir($dir);
foreach($dir_arras$key=>$val){
if($val=='.'||$val=='..'){}
else{
if(is_dir($dir.'/'.$val))
{
if(@rmdir($dir.'/'.$val)=='true'){}
else
rmdirs($dir.'/'.$val);
}
else
unlink($dir.'/'.$val);
}
}
}
?>
H. php通过rmdir删除目录的简单用法
本文实例讲述了php通过rmdir删除目录的简单用法。分享给大家供大家参考。具体分析如下:
php可以通过rmdir()函数删除服务器上的目录,下面代码里用到了is_dir()函数,该函数用于判断指定的字符串是否是目录,删除成功返回True,否则返回False
<?php
if
(!is_dir('exampledir'))
{
mkdir('exampledir');
}
rmdir('exampledir');
?>
希望本文所述对大家的php程序设计有所帮助。
I. php怎样删除一个目录下面的所有文件
php中删除文件有一个系统函数:
unlink ( string $filename );
参数$filename 表示文件的路径,可以是相对路径也可以是绝对路径。
列如,当前目录下有个文件:test.html
可以执行 unlink ( 'test.html' );来删除
另外删除目录用函数:rmdir();用法与unlink ()相同
另外你这样问也不是个办法,你可以去后盾网看视频自学
J. PHP unlink与rmdir删除目录及目录下所有文件实例代码
在php中删除文件与目录其实很简单只要两个函数一个是unlink一个rmdir函数,如果要实现删除目录及目录下的文件我们需要利用递归来操作.
函数代码:仅删除指定目录下的文件,不删除目录文件夹,代码如下:
class
shanchu
{
//循环目录下的所有文件
function
delFileUnderDir(
$dirName=”../Smarty/templates/templates_c”
)
{
if
(
$handle
=
opendir(
“$dirName”
)
)
{
while
(
false
!==
(
$item
=
readdir(
$handle
)
)
)
{
if
(
$item
!=
“.”
&&
$item
!=
“..”
)
{
if
(
is_dir(
“$dirName/$item”
)
)
{
delFileUnderDir(
“$dirName/$item”
);
}
else
{//开源代码phpfensi.com
if(
unlink(
“$dirName/$item”
)
)echo
“成功删除文件:
$dirName/$item<br
/>n”;
}
}
}
closedir(
$handle
);
}
}
}
假设需要删除一个名叫”upload”目录下的所有文件,但无需删除目录文件夹,你可以通过以下代码完成:
<?php
delFileUnderDir(
‘upload');?>
php删除所有目录,代码如下:
function
deltree($pathdir)
{
echo
$pathdir;//调试时用的
if(is_empty_dir($pathdir))//如果是空的
{
rmdir($pathdir);//直接删除
}
else
{//否则读这个目录,除了.和..外
$d=dir($pathdir);
while($a=$d->read())
{
if(is_file($pathdir.'/'.$a)
&&
($a!='.')
&&
($a!='..')){unlink($pathdir.'/'.$a);}
//如果是文件就直接删除
if(is_dir($pathdir.'/'.$a)
&&
($a!='.')
&&
($a!='..'))
{//如果是目录
if(!is_empty_dir($pathdir.'/'.$a))//是否为空
{//如果不是,调用自身,不过是原来的路径+他下级的目录名
deltree($pathdir.'/'.$a);
}
if(is_empty_dir($pathdir.'/'.$a))
{//如果是空就直接删除
rmdir($pathdir.'/'.$a);
}
}
}
$d->close();
echo
"必须先删除目录下的所有文件";//我调试时用的
}
}
function
is_empty_dir($pathdir)
{
//判断目录是否为空
$d=opendir($pathdir);
$i=0;
while($a=readdir($d))
{
$i++;
}
closedir($d);
if($i>2){return
false;}
else
return
true;
}
PHP删除目录及目录下所有文件,代码如下:
<?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<br
/>n”;
}
}
}
closedir(
$handle
);
if(
rmdir(
$dirName
)
)echo
“成功删除目录:
$dirName<br
/>n”;
}
}
//假设需要删除一个名叫”upload”的同级目录即此目录下的所有文件,你可以通过以下代码完成:
delDirAndFile(
‘upload');
?>
总结
以上所述是小编给大家介绍的PHP
unlink与rmdir删除目录及目录下所有文件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!