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.