Futuraweb, extend you brand online

TACopyR(ecursive) permette di copiare l’intero contenuto di una directory sorgente in una directory destinazione in modo ricorsivo.

<?php

function TACopyR($source, $dest)
{
	// se il sorgente e` un file viene semplicemente copiato
	if (is_file($source))
	{
		$c = copy($source, $dest);
		chmod($dest, 0777);
		return $c;
	}

	// crea la directory di destinazione
	if (!is_dir($dest))
	{
		$oldumask = umask(0);
		mkdir($dest, 0777);
		umask($oldumask);
	}

	// legge tutti gli elementi della directory sorgente
	$dir = dir($source); // handler della directory
	while (false !== $item = $dir->read())
	{
		// evito gli elementi "." e ".."
		if (($item == '.') || ($item == '..'))
		{
			continue;
		}

		// richiamo in modo ricorsivo la funzione stessa
		if ($dest !== "$source/$item")
		{
			TACopyR("$source/$item", "$dest/$item");
		}
	}

     // chiude l'handler
     $dir->close();

	 // ritorna true
     return true;
}

?>

Leave a Reply