本文实例讲述了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程序设计有所帮助。
本文地址:https://www.stayed.cn/item/5790
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我