PclZip – libreria php per zip e unzip dei file

Spesso chi gestisce un sito web può avere la necessità di creare o scompattare degli archivi di file. I motivi possono essere diversi, si può utilizzare un archivio compresso per velocizzare i tempi di upload, o si può creare un archivio come backup di certe parti del sito.
La cosa più semplice è uno shell script che faccia quanto richiesto. Purtroppo non tutti i provider consentono un accesso alla shell, alcuni non lo permettono nemmeno tramite le chiamate php. In questo caso, se abbiamo bisogno di compattare e scompattare dei file, possiamo utilizzare delle librerie php create per questa funzione.
Una libreria ottima per questo utilizzo è PclZip scaricabile da qui: http://www.phpconcept.net/pclzip

Come recita la descrizione, PclZip è una libreria che crea e gestisce gli archivi in formato zip. E' molto semplice da usare, in quanto l'intera libreria è contenuta in un unico file chiamato pclzip.lib.php, per cui è sufficiente copiare il file sul proprio sito, e includerlo nel proprio script con il comando:

require_once("pclzip.lib.php");

A questo punto avremo disponibile una classe chiamata PclZip, dotata dei seguenti metodi:
 

PclZip::PclZip() : Creazione della classe
PclZip::create() : Crea il file ZIP e aggiunge files o directory
PclZip::listContent() : List del contenuto di un archivio
PclZip::extract() : Estrae tutto o parte di un archivio
PclZip::properties() : Get delle proprietà di un archivio
PclZip::add() : Aggiunge files o directory in un archivio
PclZip::delete() : Cancella file all'interno di un archivio
PclZip::merge() : Aggiunge il contenuto di un archivio ad un secondo archivio
PclZip::duplicate() : Duplica un archivio

 

La descrizione della sintassi di utilizzo dei singoli metodi si trova nella user guide presente qui:

http://www.phpconcept.net/pclzip/user-guide

Un piccolo esempio di utilizzo per scompattare un file zip (senza tener conto di eventuali messaggi di errore) è il seguente:

<?
  require_once("pclzip.lib.php");
  $temp_file="archivio.zip";
  $archive = new PclZip($temp_file);
  if (($v_result_list = $archive->extract()) == 0) {
     die("Error : ".$archive->errorInfo(true));
  }
   echo "estrazione avvenuta";
?>

Risulta evidente di come potremo creare o scompattare archivi in formato ZIP, con poche semplici righe in php.

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay

Filed Under: phpweb

Tags:

About the Author: Marzio

RSSComments (0)

Trackback URL

Leave a Reply




If you want a picture to show with your comment, go get a Gravatar.


*