phpフォルダとそのフォルダの下にあるすべてのファイルの実装コードの削除とコピー

2039 ワード

 
  
 /* xCopy :   
  *   xCopy("feiy","feiy2",1): feiy    feiy2,    
  *   xCopy("feiy","feiy2",0): feiy    feiy2,    
  * :   
  *   $source:    
  *   $destination:    
  *   $child: ,
  */
function xCopy($source, $destination, $child){
    if (!file_exists($destination))
    {
        if (!mkdir(rtrim($destination, '/'), 0777))
        {
        //$err->add($_LANG['cannt_mk_dir']);
        return false;
        }
        @chmod($destination, 0777);
     }
if(!is_dir($source)){ 
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)
xCopy($source."/".$entry,$destination."/".$entry,$child);
}
else{
copy($source."/".$entry,$destination."/".$entry);
}
}   
}   
return 1;
}


 /* deldir :   
  *  deldidr("feiy"): feiy,       
  * :   
  *   $dir:    
  */
function deldir($dir) {
if (!file_exists($dir)){return true;
}else{@chmod($dir, 0777);}
  $dh=opendir($dir);
  while ($file=readdir($dh)) {
    if($file!="." && $file!="..") {
      $fullpath=$dir."/".$file;
      if(!is_dir($fullpath)) {
          unlink($fullpath);
      } else {
          deldir($fullpath);
      }
    }
  }

  closedir($dh);

  if(rmdir($dir)) {
    return true;
  } else {
    return false;
  }
}
?>