PHP删除非空目录的函数代码小结

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

代码一:


代码如下:

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

第二个是从手册中翻出来的:)

代码二:


代码如下:

<?php
 
functionremove_directory($dir){
 if($handle=opendir("$dir")){
 while(false!==($item=readdir($handle))){
  if($item!="."&&$item!=".."){
   if(is_dir("$dir/$item")){
    remove_directory("$dir/$item");
   }else{
    unlink("$dir/$item");
    echo"removing$dir/$item<br> ";
   }
  }
 }
 closedir($handle);
 rmdir($dir);
 echo"removing$dir<br> ";
 }
}

第三个是codebit.cn上面收集的,还是手册里的好

代码三:

代码如下:

functionremoveDir($dirName)
{
  if(!is_dir($dirName))
  {
    returnfalse;
  }
  $handle=@opendir($dirName);
  while(($file=@readdir($handle))!==false)
  {
    if($file!='.'&&$file!='..')
    {
      $dir=$dirName.'/'.$file;
      is_dir($dir)?removeDir($dir):@unlink($dir);
    }
  }
  closedir($handle);  
  returnrmdir($dirName);
}
?>

(0)

相关推荐

  • PHP遍历某个目录下的所有文件和子文件夹的实现代码

    复制代码 代码如下: <?php function read_all_dir ( $dir )    {        $result = array();        $handle = opendir($dir);        if ( $handle )        {            while ( ( $file = readdir ( $handle ) ) !== false )            {                if ( $file != '.'

  • php简单浏览目录内容的实现代码

    如下所示: 复制代码 代码如下: <?php$dir = dirname(__FILE__);$open_dir = opendir($dir);echo "<table border=1 borderColor=red cellpadding=6>";echo "<tr><th>文件名</th><th>大小</th><th>类型</th><th>修改日期<

  • php上传文件,创建递归目录的实例代码

    复制代码 代码如下: <?php $uid=$_REQUEST['uid']; $avatar = 'D:/avic/discuz/uc_server/data/avatar/'.get_avatar($uid, $size, $type);$dir=dirname($avatar); //创建目录成功后移动临时文件if(mkdirs($dir)){ if($_FILES["pic"]["error"] >= 0){ if(move_uploaded_f

  • php获取目录所有文件并将结果保存到数组(实例)

    工作中有时会遇到需要将某个目录下的文件进行批量处理的操作,这个时候我们就需要将该目录下的所有符合条件的文件找出来并保存到一个结果集中,然后方便批量处理,通常做法是将其保存到一个数组中,然后循环处理,下面将该过程做一下记录. 复制代码 代码如下: <?php//php获取目录所有文件并将结果保存到数组foreach(glob("./*") as $d){ $tmp=explode('.',$d); $k=end($tmp); //如果是文件,并且后缀名为jpg png的文件 if(

  • PHP删除目录及目录下所有文件的方法详解

    函数代码一:删除目录及目录下的所有文件 复制代码 代码如下: //循环删除目录和文件函数function delDirAndFile( $dirName ){if ( $handle = opendir( "$dirName" ) ) {while ( false !== ( $item = readdir( $handle ) ) ) {if ( $item != "." && $item != ".." ) {if ( is_

  • php列出一个目录下的所有文件的代码

    复制代码 代码如下: <?php function dir_path($path) { $path = str_replace('\\', '/', $path); if (substr($path, -1) != '/') $path = $path . '/'; return $path; } /** * 列出目录下的所有文件 * * @param str $path 目录 * @param str $exts 后缀 * @param array $list 路径数组 * @return a

  • php处理文件的小例子(解压缩,删除目录)

    复制代码 代码如下: <?php  $dir =   './temp';$desc   =   'tar_test.tar.gz';system("tar   czvf   $desc   $dir");   //压缩//system("tar   zxvf   $desc"); //解压 function d_rmdir($dirname) {   //删除非空目录  if(!is_dir($dirname)) {      return false;  }

  • php 删除目录下N分钟前创建的所有文件的实现代码

    复制代码 代码如下: <?php//delfile("upload",10);function delfile($dir,$n) //删除当DIR路径下N分钟前创建的所有文件;{if(is_dir($dir))  { if($dh=opendir($dir))   {    while (false !== ($file = readdir($dh)))     {     if($file!="." && $file!="..&qu

  • php遍历目录与文件夹的多种方法详解

    遍历目录或遍历目录下指定类型的文件,这是每一个童鞋在写程序的时候难免会用到的.PHP本身也提供了很多灰常有用的函数,正确地使用它们,不会有错滴.下面就我个人学习过程中的一些总结,希望对想学PHP的童鞋有所帮助.本函数可以列出指定目录下所有的文件(包括子目录下的) 复制代码 代码如下: function getfiles($path){ foreach(scandir($path) as $afile){if($afile=='.'||$afile=='..') continue; if(is_d

  • php文件夹与文件目录操作函数介绍

    php文件夹操作函数 string basename ( string path [, string suffix] )给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是以 suffix 结束的,那这一部分也会被去掉.在 Windows 中,斜线(/)和反斜线()都可以用作目录分隔符.在其它环境下是斜线(/). string dirname ( string path ) 给出一个包含有指向一个文件的全路径的字符串,本函数返回去掉文件名后的目录名.在 Windows

  • php 目录遍历、删除 函数的使用介绍

    小编今天没事写了目录想关的函数  包括 遍历该文件夹下的文件,目录子目录  读取当前文件下目录和文件  删除当前文件夹下的目录子目录以及文件 以上三个函数目前还不支持中文文件 中文目录 复制代码 代码如下: <?phpheader("Content-type:text/html;charset=utf-8");/*** 读取当前目录下的文件和目录* * @param    string    $path    路径* @return    array    所有满足条件的文件*/

随机推荐