欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP递归复制整个文件夹

程序员文章站 2022-06-06 23:18:33
...
用PHP递归实现复制整个文件夹的类
  1. /*
  2. * 文件夹复制类,
  3. * 赵春 2012年6月14日17:20:30
  4. * 博客:www.zhaochun.net
  5. */
  6. class CopyFile
  7. {
  8. public $fromFile;
  9. public $toFile;
  10. /*
  11. * $fromFile 要复制谁
  12. * $toFile 复制到那
  13. */
  14. function copyFile($fromFile,$toFile){
  15. $this->CreateFolder($toFile);
  16. $folder1=opendir($fromFile);
  17. while($f1=readdir($folder1)){
  18. if($f1!="." && $f1!=".."){
  19. $path2="{$fromFile}/{$f1}";
  20. if(is_file($path2)){
  21. $file = $path2;
  22. $newfile = "{$toFile}/{$f1}";
  23. copy($file, $newfile);
  24. }elseif(is_dir($path2)){
  25. $toFiles = $toFile.'/'.$f1;
  26. $this->copyFile($path2,$toFiles);
  27. }
  28. }
  29. }
  30. }
  31. /*
  32. * 递归创建文件夹
  33. */
  34. function CreateFolder($dir, $mode = 0777){
  35. if (is_dir($dir) || @mkdir($dir,$mode)){
  36. return true;
  37. }
  38. if (!$this->CreateFolder(dirname($dir),$mode)){
  39. return false;
  40. }
  41. return @mkdir($dir, $mode);
  42. }
  43. }
  44. //使用方法
  45. //引入本类,直接new copyFile('要复制谁','复制到那');
  46. //$file = new CopyFile('aaaa/aaaaa','bbbbb/bbbb');
  47. ?>
复制代码
PHP递归复制整个文件夹PHP递归复制整个文件夹