PHP: scaricare un file ZIP e decomprimerlo

PHP: scaricare un file ZIP e decomprimerlo

Scaricare un file ZIP tramite HTTP e decomprimerlo con PHP può essere un'operazione utile e comune per molte applicazioni web.

Per scaricare un file ZIP tramite HTTP in PHP, esiste un'alternativa alla funzione file_get_contents(): la libreria curl. curl è un'opzione popolare per eseguire richieste HTTP più avanzate, poiché offre maggiori opzioni e maggiore flessibilità rispetto alla funzione file_get_contents().


$url = 'https://example.com/file.zip';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$file = curl_exec($ch);

curl_close($ch);

In questo esempio, stiamo utilizzando curl per eseguire una richiesta HTTP alla URL https://example.com/file.zip. In seguito, impostiamo l'opzione CURLOPT_RETURNTRANSFER a true, in modo che curl_exec() restituisca il contenuto della risposta invece di visualizzarlo direttamente. Infine, chiudiamo la connessione curl con curl_close().

Una volta scaricato il file, è possibile utilizzare la classe ZipArchive per decomprimerlo:


$zip = new ZipArchive;
$res = $zip->open('file.zip');

if ($res === true) {
  $zip->extractTo('/path/to/extract');
  $zip->:close();
}

In sintesi, scaricare un file ZIP tramite HTTP e decomprimerlo con PHP può essere facilmente realizzato. Queste operazioni possono essere utili in molte applicazioni web, come ad esempio nell'aggiornamento di software o nel caricamento di dati da file di backup.

Torna su