Foros del Web » Programando para Internet » PHP »

comprimir varios archivos a zip o carpeta entera

Estas en el tema de comprimir varios archivos a zip o carpeta entera en el foro de PHP en Foros del Web. Hola intento comprimir una carpeta entera a un solo acrhivo con zlib de esta forma : Código: <?php $zip = new ZipArchive; if ($zip->open('test.zip') === ...
  #1 (permalink)  
Antiguo 28/12/2008, 09:45
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
comprimir varios archivos a zip o carpeta entera

Hola intento comprimir una carpeta entera a un solo acrhivo con zlib de esta forma :


Código:
<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
    $zip->addFile('/path/to/index.txt', 'newname.txt');
    $zip->close();
    echo 'ok';
} else {
    echo 'failed';
}
?>
El problema es que no hace nada , vamos que no me funciona ya que me devuelve siempre 'failed' . Puede ser que no entienda muy bien el funcionamiento de estas funciones para ZIP pero me he leido la docu oficial y sigo sin tener claro como poder comprimir una carpeta.
http://es2.php.net/manual/es/functio...ve-addfile.php

Saludos gracias y felices fiestas a tod@s
  #2 (permalink)  
Antiguo 28/12/2008, 10:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: comprimir varios archivos a zip o carpeta entera

primero, seguro que tienes soporte de ZipArchive que para eso necesitas habilitada esa extensión, ya que zlib no es lo mismo....

¿¿esta todo correcto??

Código PHP:
echo class_exists('ZipArchive'); // que devuelve?? 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 28/12/2008, 12:45
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: comprimir varios archivos a zip o carpeta entera

Cita:
Iniciado por pateketrueke Ver Mensaje
primero, seguro que tienes soporte de ZipArchive

Código PHP:
echo class_exists('ZipArchive'); // que devuelve?? 
Bueno tenía entendido que a partir de PHP 5 o antes ya incluían esta librería Zlib (¿creo que se llama así no?).

De todas formas eso devuelve 1.
  #4 (permalink)  
Antiguo 28/12/2008, 12:52
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: comprimir varios archivos a zip o carpeta entera

bien, entonces... ya revisaste el manual de PHP??

ahí hay buenos ejemplos, de mas..

http://php.net/zip
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 28/12/2008, 13:14
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: comprimir varios archivos a zip o carpeta entera

Cita:
Iniciado por pateketrueke Ver Mensaje
bien, entonces... ya revisaste el manual de PHP??

ahí hay buenos ejemplos, de mas..

http://php.net/zip
Ok , no dudo que no haya buenos ejemplos pero lo primero que hago siempre con el php antes de postear nada aquí es revisar el manual de PHP , por eso preguntaba nada más. El tema es que el caso de comprimir como quiero no lo he encontrado en ningún ejemplo.

Un sld
  #6 (permalink)  
Antiguo 28/12/2008, 14:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: comprimir varios archivos a zip o carpeta entera

Cita:
Iniciado por Dundee Ver Mensaje
Ok , no dudo que no haya buenos ejemplos pero lo primero que hago siempre con el php antes de postear nada aquí es revisar el manual de PHP , por eso preguntaba nada más. El tema es que el caso de comprimir como quiero no lo he encontrado en ningún ejemplo.

Un sld
http://www.php.net/manual/es/zip.examples.php

Código PHP:
<?php

$zip 
= new ZipArchive();
$filename "./test112.zip";

if (
$zip->open($filenameZIPARCHIVE::CREATE)!==TRUE) {
    exit(
"cannot open <$filename>\n");
}

$zip->addFromString("testfilephp.txt" time(), "#1 This is a test string added as testfilephp.txt.\n");
$zip->addFromString("testfilephp2.txt" time(), "#2 This is a test string added as testfilephp2.txt.\n");
$zip->addFile($thisdir "/too.php","/testfromfile.php");
echo 
"numfiles: " $zip->numFiles "\n";
echo 
"status:" $zip->status "\n";
$zip->close();
?>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 28/12/2008, 17:09
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: comprimir varios archivos a zip o carpeta entera

Cita:
Iniciado por pateketrueke Ver Mensaje
http://www.php.net/manual/es/zip.examples.php

Código PHP:
<?php

$zip 
= new ZipArchive();
$filename "./test112.zip";

if (
$zip->open($filenameZIPARCHIVE::CREATE)!==TRUE) {
    exit(
"cannot open <$filename>\n");
}

$zip->addFromString("testfilephp.txt" time(), "#1 This is a test string added as testfilephp.txt.\n");
$zip->addFromString("testfilephp2.txt" time(), "#2 This is a test string added as testfilephp2.txt.\n");
$zip->addFile($thisdir "/too.php","/testfromfile.php");
echo 
"numfiles: " $zip->numFiles "\n";
echo 
"status:" $zip->status "\n";
$zip->close();
?>
Ok si eso está muy bien pero yo no lo entiendo jejeje , es decir ese Zip "test112.zip"" se supone que ya existe?? , ¿no se puede crear un zip nuevo q no exista?; php.net está muy bien cuando sabes ya sobre un tema , pero cuando no tienes ni zorra como yo en este caso que nunca he trabajado con estas librerias entonces la llevas clara.

Entiendo que esta línea crea un objeto llamado $zip
$zip = new ZipArchive();

//supongo que esta será la ruta ¿pero ese zip ya existe ?
$filename = "./test112.zip";
//y aquí ya me vuelvo loco del todo
if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
exit("cannot open <$filename>\n");
}


Un saludo
  #8 (permalink)  
Antiguo 29/12/2008, 11:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: comprimir varios archivos a zip o carpeta entera

Si ves el Manual: http://www.php.net/manual/en/functio...chive-open.php, ahí puedes ver todos los modos que soporta ZipArchive::open.

Saludos.
  #9 (permalink)  
Antiguo 29/12/2008, 13:06
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: comprimir varios archivos a zip o carpeta entera

Cita:
Iniciado por GatorV Ver Mensaje
Si ves el Manual: http://www.php.net/manual/en/functio...chive-open.php, ahí puedes ver todos los modos que soporta ZipArchive::open.

Saludos.
Ok mil gracias , intentaré entenderlo.

un saludo y felices fiestas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:20.