(PHP 7, PHP 8, PECL zip >= 1.13.0)
ZipArchive::setCompressionName — Establecer el método de compresión de una entrada definida por su nombre
Establecer el método de compresión de una entrada definida por su nombre.
name
El nombre de la entrada.
method
El método de compresión. Una de las constantes
ZipArchive::CM_*
.
compflags
Nivel de compresión.
Ejemplo #1 Añadir ficheros con diferentes métodos de compresión a un archivo
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
$zip->addFromString('foo', 'Un texto');
$zip->addFromString('bar', 'Otro texto');
$zip->setCompressionName('foo', ZipArchive::CM_STORE);
$zip->setCompressionName('bar', ZipArchive::CM_DEFLATE);
$zip->close();
echo 'ok';
} else {
echo 'fallo';
}
?>
Ejemplo #2 Añadir fichero y establecer el método de compresión
<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
$zip->addFile('foo.jpg', 'bar.jpg');
$zip->setCompressionName('bar.jpg', ZipArchive::CM_XZ);
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>