<? Php
/*
* Folder copy class,
* Wu Xiaoze scored 29 points at on January 1, November 2, 2015
*/
Class CopyFile
{
Public $ fromFile;
Public $ toFile;
/*
* $ FromFile: Who to copy
* $ Copy toFile to that
*/
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 );
}
}
}
}
/*
* Recursively create folders
*/
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 );
}
}
// Usage
// Introduce this class, directly new copyFile ('who to copy, 'copy to that ');
// $ File = new CopyFile ('./10010', './10010copy ');
?>