Creando ZIPs con PHP

Vamos a ver una manera sencilla de crear ZIPs con PHP, para ello primero necesitamos una libreria que se llama ZipFile:

Mirror # 1
Mirror # 2

luego renombramos el archivo a: zipfile.php, incluimos la libreria en nuestra carpeta de librerias (en mi caso se llama "require") y la usamos asi:

<?php
require ("require/zipfile.php");
$zipfile = new zipfile();
$zipfile->add_file("res.pdf", "res.pdf");
$zipfile->add_file("tab.pdf", "tab.pdf");
$zipfile->add_file("err.pdf", "err.pdf");
$zipfile->add_file("c3d.pdf", "c3d.pdf");
$zipfile->add_file("pila.pdf", "pila.pdf");

header("Content-type: application/octet-stream");
header("Content-disposition: attachment; filename=archivos.zip");
echo $zipfile->file();
?>


Primero importamos la libreria "require ("require/zipfile.php");" luego instanciamos la clase "$zipfile = new zipfile();" y seguido empezamos a anadir archivos: "$zipfile->add_file("pila.pdf", "pila.pdf");", el primer parametro indica el archivo y el segundo el nombre que contendra dentro del zip, por ultimo le damos nombre con " header("Content-disposition: attachment; filename=archivos.zip");" y regresamos el zip creado con "echo $zipfile->file();".

Tambien podemos crear carpetas dentro del zip, usando el metodo "add_dir":

$zipfile->add_dir("carpeta/");
$zipfile->add_file("archivo.html","carpeta/archivo.html");

Fuente: Devco.net

0 comentarios: