Home >Backend Development >PHP Tutorial >PHP implements recursively copying class instances of the entire folder, _PHP tutorial
The example in this article describes a PHP class that implements recursively copying an entire folder. Share it with everyone for your reference. The details are as follows:
<?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'); ?>
I hope this article will be helpful to everyone’s PHP programming design.