• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Guida Creare archivi .zip in PHP

Kaito

Utente Strepitoso
Autore del topic
16 Febbraio 2011
4.511
47
Miglior risposta
0
Salve, questa semplice guida illustrerà come creare archivi .zip usando il php.

IL NECESSARIO

  1. Conoscenza minima del PHP;
  2. Classe "archive.php" , scaricabile da qui:
    Perfavore, Entra oppure Registrati per vedere i Link!
    [NON FUNZIONANTE] Nuovo Link:
    Perfavore, Entra oppure Registrati per vedere i Link!
    ( scansione:
    Perfavore, Entra oppure Registrati per vedere i Link!
    );
  3. Uno spazio web su cui provare oppure xampp installato per testare in locale



LA CREAZIONE

Per prima cosa bisogna estrarre il contenuto dell' archivio in una cartella o sul Desktop. Una volta fatto ciò troverete 3 file:

  • avatar.png
  • archive.php
  • test_archivio.php

Il primo sarà il file che sarà inserito nell' archivio, il secondo è la classe fondantamentale (non modificate quel file!) e il terzo è la nostra paginetta php dove avverrà la creazione e il download dell' archivio.

Come avrete notato già è tutto fatto, però riporto qui i codici del file test_archivio.php spiegandolo.

PHP:
Perfavore, Entra oppure Registrati per vedere i codici!

include('archive.php'); serve per includere la classe fondamentale per creare l' archivio, se cancellate questa riga non funzionerà lo script.

$test = new zip_file("../test_archivio.zip");, questa riga crea una nuova classe tramite la classe già esistente "zip_file", e accanto inseriremo il nome dell' archivio che vogliamo creare, in questo caso è test_archivio.

$test->set_options(array('inmemory' => 1, 'recurse' => 0, 'storepaths' => 0)); sono le impostazioni dell' archivio, meglio lasciare così.

$test->add_files("avatar.png");
aggiunge il file avatar.png all' archivio, scrivendo piu' volte questa riga (ovviamente con file diversi) sarà possibile aggiungere altri file.

$test->create_archive(); crea l' archivio.

$test->download_file(); permette il download dell' archivio.



ALTRI ESEMPI

1. Esempio: Download archivio al click su un button.

Editando il codice aggiungendo un semplice form, sarà possibile far in modo che il download parta solo al click su un bottone e non all' apertura della pagina.

PHP:
Perfavore, Entra oppure Registrati per vedere i codici!


2. Esempio: Creare archivio con più file.

Come detto già prima, basterà aggiungere tante righe $test->add_files("PATH_FILE"); col percorso del file quanti i file da aggiungere.

PHP:
Perfavore, Entra oppure Registrati per vedere i codici!

Oppure col form:

PHP:
Perfavore, Entra oppure Registrati per vedere i codici!

Credo non servano screen, la guida è abbastanza chiara. Se dovete copiare la guida altrove citate sempre la fonte.

VIDEO:

[video=youtube;z2Nl4JKvd7k]http://www.youtube.com/watch?v=z2Nl4JKvd7k[/video]
 
Ultima modifica da un moderatore:
Riferimento: Creare archivi .zip in PHP

Grazie, ho aggiunto il video.. La qualità non è ottima dato che l' ho dovuto comprimere altrimenti era 1 gb di video..
 
Riferimento: Creare archivi .zip in PHP

Non riesco a scaricare la classe! Qualcuno può rimetterla?
Grazie :emoji_slight_smile:
 
Riferimento: Creare archivi .zip in PHP

Aggiorno la discussione con il nuovo link ;)
 
Riferimento: Creare archivi .zip in PHP

Togli il link non funzionante, non serve.

Bella guida. Semplice e soprattutto funzionante, bravo!