PHP实现递归复制整个文件夹的类实例


Posted in PHP onAugust 03, 2015

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
PHP iconv 解决utf-8和gb2312编码转换问题
Apr 12 PHP
php利用cookie实现访问次数统计代码
May 19 PHP
对淘宝URL中ID提取的PHP代码
Sep 01 PHP
ThinkPHP分页类使用详解
Mar 05 PHP
php对包含html标签的字符串进行截取的函数分享
Jun 19 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
Jun 30 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
Jun 28 PHP
9个比较实用的php代码片段
Mar 15 PHP
php表单加入Token防止重复提交的方法分析
Oct 10 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
Feb 08 PHP
php微信公众号开发之二级菜单
Oct 20 PHP
解决Laravel blade模板转义html标签的问题
Sep 03 PHP
UTF-8正则表达式如何匹配汉字
Aug 03 #PHP
PHP使用缓存即时输出内容(output buffering)的方法
Aug 03 #PHP
php中ob函数缓冲机制深入理解
Aug 03 #PHP
如何利用http协议发布博客园博文评论
Aug 03 #PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
Aug 01 #PHP
如何使用php实现评委评分器
Jul 31 #PHP
php给图片加文字水印
Jul 31 #PHP
You might like
1.PHP简介
2006/10/09 PHP
PHP不用第三变量交换2个变量的值的解决方法
2013/06/02 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
PHP获取一段文本显示点阵宽度和高度的方法
2015/03/12 PHP
原生javascript获取元素样式属性值的方法
2010/12/25 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
javascript的replace方法结合正则使用实例总结
2016/06/16 Javascript
jQuery基本选择器和层次选择器学习使用
2017/02/27 Javascript
vue-router 中router-view不能渲染的解决方法
2017/05/23 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
JavaScript图片旋转效果实现方法详解
2020/06/28 Javascript
[46:25]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第二局
2016/03/05 DOTA
Python批量修改文件后缀的方法
2014/01/26 Python
爬山算法简介和Python实现实例
2014/04/26 Python
Python实现简易端口扫描器代码实例
2017/03/15 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
Python常见字符串操作函数小结【split()、join()、strip()】
2018/02/02 Python
使用pyinstaller打包PyQt4程序遇到的问题及解决方法
2019/06/24 Python
python中bs4.BeautifulSoup的基本用法
2019/07/27 Python
Python在cmd上打印彩色文字实现过程详解
2019/08/07 Python
浅谈matplotlib.pyplot与axes的关系
2020/03/06 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
带你认识HTML5中的WebSocket
2015/05/22 HTML / CSS
阿拉伯世界最大的电子商务网站:Souq沙特阿拉伯
2016/10/28 全球购物
Shopee马来西亚:随拍即卖,最佳行动电商拍卖平台
2017/06/05 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
元旦晚会上单位领导演讲稿
2014/01/05 职场文书
董事长秘书工作职责
2014/06/10 职场文书
学生不讲诚信检讨书
2014/09/29 职场文书
教师群众路线心得体会
2014/11/04 职场文书
实习感想范文
2015/08/10 职场文书
公开致歉信
2019/06/24 职场文书
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang