登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

懒者生存

选择需要无悔的坚持!

 
 
 

日志

 
 

PHP:目录的递归操作(创建、拷贝、删除)  

2011-02-16 10:50:37|  分类: PHP |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1. 递归创建目录

/**
 * 递归创建目录
 *
 * @param    String    $dir         创建的多级目录
 * @param    String    $mode    目录权限字串
*/
function create_dirs($dir, $mode='0777')
{
       if(!is_dir($dir)){
              $this->create_dirs(dirname($dir), $mode);
              mkdir($dir, $mode);
       }
       return true;
}

2. 递归拷贝目录

/**
 * 批量拷贝目录(包括子目录下所有文件)
 *
 * 用法:
 * copy_dirs("laigw", "gwei", 1)   拷贝laigw下的文件到 gwei,包括子目录
 * copy_dirs("laigw", "gwei", 0)   拷贝laigw下的文件到 gwei,不包括子目录
 *
 * @param   String   $source          源目录名
 * @param   String   $destination   目的目录名
 * @param   Int        $child              复制时,是不是包含的子目录
*/
function copy_dirs($source, $destination, $child)
{
       if(!is_dir($source)){
              echo("Error:the $source is not a direction!");
              return 0;
       }

       if(!is_dir($destination)){
              mkdir($destination, 0777);
       }
       $handle = dir($source);

       while($entry = $handle->read())
       {
              if(($entry != ".") && ($entry != "..")) {
                     if(is_dir($source."/".$entry)) {
                            if($child) {
                                   copy_dirs($source."/".$entry, $destination."/".$entry, $child);
                            }
                     } else {
                            copy($source."/".$entry, $destination."/".$entry);
                     }
              }
       }
       return 1;
}

3. 递归删除目录

/**
 * 递归删除目录(包括子目录下所有文件)
 *
 * @param   String   $dir   文件目录
*/
function rm_dirs($dir) {
       if($objs = glob($dir."/*")) {
              foreach($objs as $obj) {
                     is_dir($obj) ? rm_dirs($obj) : unlink($obj);
              }
       }
       rmdir($dir);
}
  评论这张
 
阅读(970)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018