Rumah >pembangunan bahagian belakang >tutorial php >php 实现递归复制整个文件夹的类实例详解

php 实现递归复制整个文件夹的类实例详解

怪我咯
怪我咯asal
2017-07-05 10:25:431228semak imbas

这篇文章主要介绍了PHP实现递归复制整个文件夹的类,涉及php针对文件的递归操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

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

<?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.&#39;/&#39;.$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(&#39;要复制谁&#39;,&#39;复制到那&#39;);
//$file = new CopyFile(&#39;aaaa/aaaaa&#39;,&#39;bbbbb/bbbb&#39;);
?>

Atas ialah kandungan terperinci php 实现递归复制整个文件夹的类实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn