ZipArchive::setCompressionName

(PHP 7, PHP 8, PECL zip >= 1.13.0)

ZipArchive::setCompressionNameУстановить метод сжатия записи, заданной по имени

Описание

publicZipArchive::setCompressionName(string$name, int$method, int$compflags = 0): bool

Устанавливает метод сжатия записи заданной по имени.

Список параметров

name

Имя записи.

method

Метод сжатия, одна из констант ZipArchive::CM_*.

compflags

Уровень сжатия.

Возвращаемые значения

Возвращает true в случае успешного выполнения или false, если возникла ошибка.

Примеры

Пример #1 Добавить к архиву файлы с разными методами сжатия

<?php
$zip
= new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if (
$res === TRUE) {
$zip->addFromString('foo', 'Некоторый текст');
$zip->addFromString('bar', 'Некоторый другой текст');
$zip->setCompressionName('foo', ZipArchive::CM_STORE);
$zip->setCompressionName('bar', ZipArchive::CM_DEFLATE);
$zip->close();
echo
'готово';
} else {
echo
'ошибка';
}
?>

Пример #2 Добавить файл и установить метод сжатия

<?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
'готово';
} else {
echo
'ошибка';
}
?>
To Top