Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/12/2010, 09:27
mhax
 
Fecha de Ingreso: agosto-2009
Ubicación: Cartagena, Colombia
Mensajes: 516
Antigüedad: 15 años, 2 meses
Puntos: 13
Respuesta: Copiar directorios

tengo un problema con la solucion que planteo Pleniluni0 en este post:http://www.forosdelweb.com/f18/probl...8/#post1369931

Cita:

//..........................copiar de un sitio a otro....................

function copyd($base, $destino)
{

// Simple copy for a file
if (is_file($base)) {
return copy($base, $destino);
}

// Make destination directory
if (!is_dir($destino)) {
mkdir($destino);
}

// Loop through the folder
$dir = dir($base);
while (false !== $entry = $dir->read()) {
// Skip pointers
if ($entry == '.' || $entry == '..') {
continue;
}

// Deep copy directories
if ($dest !== "$base/$entry") {
copyd("$base/$entry", "$destino/$entry");
}
}

// Clean up
$dir->close();
return true;
}


//.................borrar carpeta.................................

function rmdird($dirname)
{
// Sanity check
if (!file_exists($dirname)) {
return false;
}

// Simple delete for a file
if (is_file($dirname)) {
return unlink($dirname);
}

// Loop through the folder
$dir = dir($dirname);
while (false !== $entry = $dir->read()) {
// Skip pointers
if ($entry == '.' || $entry == '..') {
continue;
}

// Recurse
rmdird("$dirname/$entry");
}

// Clean up
$dir->close();
return rmdir($dirname);
}
al mover, se mete en un cliclo infinito, y pues las razon es facil de entender pero no se como solucionarlo:

Tengo un directorio de prueba:
Código Directorio:
Ver original
  1. Raiz
  2.                 nivel_1
  3.                             nivel_2
cuando quiero mover el nivel_1 al nivel_2 se presenta el problema con el ciclo infinito.
como podria solucionar esto?
__________________
Un camino de mil millas comienza por el primer paso. Lao Tse