Salve a tutti, vorrei cancellare in un solo passaggio delle cartelle che contengono altre cartelle all'interno e files. Finora sono riuscito ad ottenere la eliminazione di cartelle che contengono solo files con il seguente script.
Vorrei un aiuto, grazie.

Codice PHP:
$scelto $_SESSION['scelto'];
$elimina_pratica "uploads/".$scelto.-$rep."/";
$folderName $elimina_pratica;
//crea un array che conterrà l’elenco di tutti i file che sono stati eliminati
    
$elenco=array();
    
//apre la cartella specificata come parametro
    
$cartella opendir($folderName);
    
//ciclo che legge tutti i file della cartella
    
while ($file readdir($cartella)) {
        
//se il file ha un nome diverso da "." o ".."
        
if($file !='.'&& $file !='..'){
            
//Verifica che si tratta di un file e non di una cartella
            
if(is_file($folderName.'/'.$file)){
                
//aggiunge il file all’array
                
array_push($elenco,$folderName.'/'.$file);
                
//elimina il file
                
unlink($folderName.'/'.$file);
            }
            
//se si tratta di una cartella
            
if(is_dir($folderName.'/'.$file)){
                
//richiama ricorsivamente la stessa funzione aggiungendo i file
                //della nuova funzione all’elenco creato inizialmente
                
$elenco myMerge($elenco,deleteFilesAndFolder($folderName.'/'.$file));
            }
        }
    }
    
//Chiude la cartella
    
closedir($cartella);
    
//elimina la cartella
    
rmdir($folderName);
    
//aggiunge la cartella stessa all’elenco
    
array_push($elenco,$folderName);
 
    
//restituisce l’elenco di tutti i file eliminati
    
return $elenco;
     

?>