Salve ho questo problema in LocalHost.

Praticamente mi perde (o non crea il file zip)

Codice PHP:
<?php

class zip {

    public function 
comprimi($cartella$files) {

        
$error ""//error holder
        
if (extension_loaded('zip')) {

// Checking ZIP extension is available
            
if ((count($files) > 0)) {
                
$zip = new ZipArchive(); // Load zip library 
                
$zip_name time() . ".zip"// Zip name
                
if ($zip->open($zip_nameZIPARCHIVE::CREATE) !== TRUE) {
// Opening zip file to load files
                    
$error .= "* Sorry ZIP creation failed at this time";
                } else {

                    foreach (
$files as $v) {

                        
$zip->addFile($cartella $v); // Adding files into zip
                    
}
                }
                
$zip->close();
                if (
file_exists($zip_name)) {

                    
// push to download the zip
                    
header('Content-type: application/zip');
                    
header('Content-Disposition: attachment; filename="' $zip_name '"');
                    
readfile($zip_name);
// remove zip file is exists in temp path
                
} else {
                    
$error 'File non  Trovato';
                }
            } else {
                
$error .= "* Selezionare almeno un file da comprimere";
            }
        } else {
            
$error .= "* Estensione Zip Non Trovata";
        }
        return 
$error;
    }

}

?>
Il File lo apre perchè ho provato e mi restituisce 1 sul Zip->Open ma sembra non creare il file $zip_name e non capisco dove sia l'errore.

Daniele