>백엔드 개발 >PHP 튜토리얼 >PHP实现递归复制整个文件夹的类实例_PHP

PHP实现递归复制整个文件夹的类实例_PHP

WBOY
WBOY원래의
2016-05-30 08:47:18727검색

本文实例讲述了PHP实现递归复制整个文件夹的类。分享给大家供大家参考。具体如下:

<&#63;php
/*
 * 文件夹复制类
 */
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');
&#63;>

希望本文所述对大家的php程序设计有所帮助。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.