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

前端之家收集整理的这篇文章主要介绍了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)   ***/

猜你在找的PHP相关文章