(PHP 7, PECL zip >= 1.13.0)
ZipArchive::setCompressionName — Establecer el método de compresión de una entrada definida por su nombre
$name
, int $comp_method
[, int $comp_flags
= 0
] ) : boolEstablecer el método de compresión de una entrada definida por su nombre.
name
El nombre de la entrada.
comp_method
El método de compresión. Una de las constantes
ZipArchive::CM_*
.
comp_flags
Nivel de compresión.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
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';
}
?>