(PHP 5 >= 5.2.0, PHP 7, PECL zip >= 1.1.0)
ZipArchive::open — Abrir un fichero de archivo en formato ZIP
Abre un archivo zip nuevo para lectura, escritura o modificación.
filename
El nombre del fichero del archivo ZIP para ser abierto.
flags
El modo a utilizar para abrir el archivo.
C
Devuelve TRUE
en caso de éxito o el código de error.
ZipArchive::ER_EXISTS
El fichero ya existe.
ZipArchive::ER_INCONS
Archivo zip inconsistente.
ZipArchive::ER_INVAL
Argumento no válido.
ZipArchive::ER_MEMORY
Falló malloc.
ZipArchive::ER_NOENT
No existe el fichero.
ZipArchive::ER_NOZIP
No es un archivo zip.
ZipArchive::ER_OPEN
No se puede abrir el fichero.
ZipArchive::ER_READ
Error de lectura.
ZipArchive::ER_SEEK
Error de búsqueda.
Ejemplo #1 Abrir y extraer
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip');
if ($res === TRUE) {
echo 'ok';
$zip->extractTo('test');
$zip->close();
} else {
echo 'falló, código:' . $res;
}
?>
Ejemplo #2 Crear un archivo
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
$zip->addFromString('test.txt', 'el contenido del fichero va aquí');
$zip->addFile('data.txt', 'entryname.txt');
$zip->close();
echo 'ok';
} else {
echo 'falló';
}
?>