codice:
function spostacartella($old,$new){
	$d = dir($old);
	if (!is_dir($new))
		mkdir($new);
	mkdir($new."/".$old);
	while ($entry = $d->read()) {
		if ($entry != "." && $entry != ".."){
			copy($old."/".$entry,$new."/".$old."/".$entry);
			unlink($old."/".$entry);
		}
	}
	$d->close(); 
	rmdir($old);
}

spostacartella("vecchiacartella","nuovacartella");

considera che bisogna mettere dei controlli in caso di directory inesistente, directory vuota, etc.