微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP 利用递归复制整个文件夹的类用法

感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:

/**
 * 文件夹复制类
 *
 * @param 
 * @author 编程之家 jb51.cc jb51.cc
 **/
class copyFile
{
public $fromFile;
public $toFile;
/*
 * $fromFile  要复制谁
 * $toFile    复制到那
 */
function copyFile($fromFile,$toFile){
 $this->CreateFolder($toFile);
 $folder1=opendir($fromFile);
 while($f1=readdir($folder1)){
  if($f1!=. && $f1!=..){
   $path2={$fromFile}/{$f1};
   if(is_file($path2)){ 
    $file = $path2;
    $newfile = {$toFile}/{$f1};
    copy($file,$newfile);
   }elseif(is_dir($path2)){
    $toFiles = $toFile.'/'.$f1;
    $this->copyFile($path2,$toFiles);
   }
  }
 }
}
/*
 * 递归创建文件夹
 */
function CreateFolder($dir,$mode = 0777){
 if (is_dir($dir) || @mkdir($dir,$mode)){
  return true;
 } 
    if (!$this->CreateFolder(dirname($dir),$mode)){
     return false;
    }
 return @mkdir($dir,$mode);
}
}
//使用方法
//引入本类,直接new copyFile('要复制谁','复制到那');
//$file = new copyFile('aaaa/aaaaa','bbbbb/bbbb');



/***   代码来自编程之家 jb51.cc(jb51.cc)   ***/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐