Heim  >  Artikel  >  php教程  >  PHP删除非空目录的三种方法(代码分享)

PHP删除非空目录的三种方法(代码分享)

WBOY
WBOYOriginal
2016-06-13 11:30:531079Durchsuche


有了这个小程序,PHPer就不用手动进行删除计算机上的目录文件了,在练习PHP目录文件操作时就可以用这个函数,在这个基础上还可以增加浏览文件夹目录,然后进行删除。

代码一:

<?<span php
 </span><span //</span><span 删除非空目录</span>
<span function</span> d_rmdir(<span $dirname</span><span ) {
</span><span if</span>(!<span is_dir</span>(<span $dirname</span><span )) {
</span><span return</span> <span false</span><span ;
}
</span><span $handle</span> = @<span opendir</span>(<span $dirname</span><span );
</span><span while</span>((<span $file</span> = @<span readdir</span>(<span $handle</span>)) !== <span false</span><span ){
</span><span if</span>(<span $file</span> != '.' && <span $file</span> != '..'<span ){
</span><span $dir</span> = <span $dirname</span> . '/' . <span $file</span><span ;
</span><span is_dir</span>(<span $dir</span>) ? d_rmdir(<span $dir</span>) : <span unlink</span>(<span $dir</span><span );
}
}
</span><span closedir</span>(<span $handle</span><span );
</span><span return</span> <span rmdir</span>(<span $dirname</span><span ) ;
}
</span><span if</span>(d_rmdir("./temp"<span ))
</span><span echo</span> "succes"<span ;
</span><span else</span>
<span echo</span> "false"<span ;
</span><span //</span><span by www.jbxue.com</span>
?>

代码二,来自php中文在线手册:

<?<span php
</span><span //</span><span 删除非空目录 
//by www.jbxue.com</span>
functionremove_directory(<span $dir</span><span ){
 </span><span if</span>(<span $handle</span>=<span opendir</span>("<span $dir</span>"<span )){
 </span><span while</span>(<span false</span>!==(<span $item</span>=<span readdir</span>(<span $handle</span><span ))){
  </span><span if</span>(<span $item</span>!="."&&<span $item</span>!=".."<span ){
   </span><span if</span>(<span is_dir</span>("<span $dir</span>/<span $item</span>"<span )){
    remove_directory(</span>"<span $dir</span>/<span $item</span>"<span );
   }</span><span else</span><span {
    </span><span unlink</span>("<span $dir</span>/<span $item</span>"<span );
    </span><span echo</span>"removing<span $dir</span>/<span $item</span><br> "<span ;
   }
  }
 }
 </span><span closedir</span>(<span $handle</span><span );
 </span><span rmdir</span>(<span $dir</span><span );
 </span><span echo</span>"removing<span $dir</span><br> "<span ;
 }
}
</span>?>

代码三:

<?<span php
</span><span //</span><span 删除非空目录
//by www.jbxue.com</span>
functionremoveDir(<span $dirName</span><span )
{
  </span><span if</span>(!<span is_dir</span>(<span $dirName</span><span ))
  {
    returnfalse;
  }
  </span><span $handle</span>=@<span opendir</span>(<span $dirName</span><span );
  </span><span while</span>((<span $file</span>=@<span readdir</span>(<span $handle</span>))!==<span false</span><span )
  {
    </span><span if</span>(<span $file</span>!='.'&&<span $file</span>!='..'<span )
    {
      </span><span $dir</span>=<span $dirName</span>.'/'.<span $file</span><span ;
      </span><span is_dir</span>(<span $dir</span>)?removeDir(<span $dir</span>):@<span unlink</span>(<span $dir</span><span );
    }
  }
  </span><span closedir</span>(<span $handle</span><span );  
  returnrmdir(</span><span $dirName</span><span );
}
</span>?>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn