Enviado por luishernando a través de Google Reader:
Hace poco tiempo necesitaba crear archivos ZIP con PHP al vuelo, tras un rato de búsqueda encontré esta clase zipfile escrita por Eric Mueller y muy bien explicada en Creating ZIP files with PHP.
Esta clase tiene dos métodos add_dir() y add_file() que permite agregar una carpeta o un archivo al zip que se esta creando.
Veamos dos prácitocs ejemplos que no necesitan explicación ya que son bastante sencillos y fáciles de entender.
Agregar un archivo comprimido a un archivo ZIP
require ("zipfile.php"); $zipfile = new zipfile(); $zipfile->add_file(implode("",file("img01.jpg")), "foto.jpg"); header("Content-type: application/octet-stream");header("Content-disposition: attachment; filename=zipfile.zip"); echo $zipfile->file();
Agregando varios archivos a un archivo ZIP
require ("zipfile.php"); $zipfile = new zipfile(); $zipfile->add_dir("img/"); $zipfile->add_file(implode("",file("img01.jpg")), "img/01.jpg"); $zipfile->add_file(implode("",file("img02.jpg")), "img/02.jpg"); $zipfile->add_file(implode("",file("img03.jpg")), "img/03.jpg"); header("Content-type: application/octet-stream"); header("Content-disposition: attachment; filename=fotos.zip"); echo $zipfile->file();
<!--break-->
Cómo veis es bastante sencillo mi única recomendación es que en caso de usar esta clase para generar archivos zip "al vuelo" hay que tener cuidado con el consumo de memoría ya que puede llegar a comprometer el correcto funcionamiento de tu aplicación si se producen descargas simultáneas con un número elevado de archivos.
Cosas que puedes hacer desde aquí:
- Subscribirse a TuFuncion con Google Reader
- Empieza a utilizar Google Reader para mantenerte al día fácilmente de todos tus sitios favoritos.
No hay comentarios.:
Publicar un comentario
Gracias! ¿Qué sería de la red sin tu opinion? Algo muy aburrido! :D