Example #1
0
 /**
  * Copy files from one directory to another
  *
  * @param string $source source directory
  * @param string $dest destination directory
  * @return boolean true if directory copied correctly, false - otherwise
  */
 function fn_uc_copy_files($source, $dest)
 {
     // Simple copy for a file
     if (is_file($source)) {
         return fn_uc_copy($source, $dest);
     }
     // Loop through the folder
     if (is_dir($source)) {
         $dir = dir($source);
         while (false !== ($entry = $dir->read())) {
             // Skip pointers
             if ($entry == '.' || $entry == '..') {
                 continue;
             }
             // Deep copy directories
             if ($dest !== $source . '/' . $entry) {
                 if (fn_uc_copy_files(rtrim($source, '/') . '/' . $entry, $dest . '/' . $entry) == false) {
                     return false;
                 }
             }
         }
         // Clean up
         $dir->close();
         return true;
     } else {
         fn_set_notification('E', __('error'), __('cannot_write_file', array('[file]' => $dest)));
         return false;
     }
 }
Example #2
0
 public static function copyFiles($source, $dest)
 {
     if (is_array($source)) {
         foreach ($source as $key => $src) {
             self::copyFiles($src, $dest[$key]);
         }
     } else {
         fn_uc_copy_files($source, $dest);
     }
     return true;
 }
Example #3
0
/**
 * Copy files from one directory to another
 *
 * @param string $source source directory
 * @param string $dest destination directory
 * @return boolean true if directory copied correctly, false - otherwise
 */
function fn_uc_copy_files($source, $dest)
{
    // Simple copy for a file
    if (is_file($source)) {
        return fn_uc_copy($source, $dest);
    }
    // Loop through the folder
    if (is_dir($source)) {
        $dir = dir($source);
        while (false !== ($entry = $dir->read())) {
            // Skip pointers
            if ($entry == '.' || $entry == '..') {
                continue;
            }
            // Deep copy directories
            if ($dest !== $source . '/' . $entry) {
                if (fn_uc_copy_files(rtrim($source, '/') . '/' . $entry, $dest . '/' . $entry) == false) {
                    return false;
                }
            }
        }
        // Clean up
        $dir->close();
        return true;
    } else {
        return false;
    }
}