public static function copyR($source, $dest) { if (is_dir($source)) { $dir_handle = opendir($source); while ($file = readdir($dir_handle)) { if ($file != "." && $file != "..") { if (is_dir($source . DS . $file)) { if (!is_dir($dest . DS . $file)) { mkdir($dest . DS . $file); } cpy($source . DS . $file, $dest . DS . $file); } else { copy($source . DS . $file, $dest . DS . $file); } } } closedir($dir_handle); } else { copy($source, $dest); } }
function cpy($source, $dest, $ign) { if (is_dir($source)) { $dir_handle = opendir($source); while ($file = readdir($dir_handle)) { if (!in_array($file, $ign)) { if (is_dir($source . "/" . $file)) { if (!file_exists($dest . "/" . $file)) { mkdir($dest . "/" . $file); } cpy($source . "/" . $file, $dest . "/" . $file, $ign); } else { copy($source . "/" . $file, $dest . "/" . $file); } } } closedir($dir_handle); } else { copy($source, $dest); } }