Home > Article > Backend Development > PHP implements recursive copying of class instances of entire folders_php tips
The example in this article describes the PHP class that implements recursive copying of the 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.