本文实例讲述了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.'/'.$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');?>
希望本文所述对大家的php程序设计有所帮助。
新闻热点
疑难解答