• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

探讨PHP删除文件夹的三种方法_php技巧

php 搞代码 4年前 (2022-01-26) 10次浏览 已收录 0个评论

1、递归法

deleteDir($dir)<BR>{<BR>if (rmdir($dir)==false && is_dir($dir)) {<BR>    if ($dp = opendir($dir)) {<BR>     while (($file=readdir($dp)) != false) {<BR>      if (is_dir($file) && $file!='.' && $file!='..') {<BR>       deleteDir($file);<BR>      } else {<BR>       unlink($file);<BR>      }<BR>     }<BR>     closedir($dp);<BR>    } else {<BR>     exit('Not permission<div style="color:transparent">!本文来源gaodai.ma#com搞##代!^码网(</div><sup>搞gaodaima代码</sup>');<BR>    }<BR>}<BR>}<BR>


2、系统调用法

function del_dir($dir)<BR>{<BR>if(strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') {<BR>       $str = "rmdir /s/q " . $dir;<BR>} else {<BR>       $str = "rm -Rf " . $dir;<BR>}<BR>}<BR>


3、循环法

function deltree($pathdir)<BR>{<BR>echo $pathdir;//我调试时用的<BR>if(is_empty_dir($pathdir))//如果是空的<BR>      {<BR>      rmdir($pathdir);//直接删除<BR>      }<BR>      else<BR>      {//否则读这个目录,除了.和..外<BR>          $d=dir($pathdir);<BR>          while($a=$d->read())<BR>          {<BR>          if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);}<BR>          //如果是文件就直接删除<BR>          if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..'))<BR>          {//如果是目录<BR>              if(!is_empty_dir($pathdir.'/'.$a))//是否为空<BR>              {//如果不是,调用自身,不过是原来的路径+他下级的目录名<BR>              deltree($pathdir.'/'.$a);<BR>              }<BR>              if(is_empty_dir($pathdir.'/'.$a))<BR>              {//如果是空就直接删除<BR>              rmdir($pathdir.'/'.$a);<BR>              }<BR>          }<BR>          }<BR>          $d->close();          <BR>      echo "必须先删除目录下的所有文件";//我调试时用的<BR>      }<BR>}<BR>function is_empty_dir($pathdir)<BR>{<BR>//判断目录是否为空,我的方法不是很好吧?只是看除了.和..之外有其他东西不是为空<BR>$d=opendir($pathdir);<BR>$i=0;<BR>      while($a=readdir($d))<BR>      {<BR>      $i++;<BR>      }<BR>closedir($d);<BR>if($i>2){return false;}<BR>else return true;<BR>}<BR>

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:探讨PHP删除文件夹的三种方法_php技巧
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址