ZipArchive::setCompressionName
(PHP 7, PECL zip >= 1.13.0)
ZipArchive::setCompressionName — Установить метод сжатия записи, заданной по имени
Описание
public ZipArchive::setCompressionName
( string
$name
, int $comp_method
, int $comp_flags
= 0
) : boolУстанавливает метод сжатия записи заданной по имени.
Список параметров
-
name
-
Имя записи.
-
comp_method
-
Метод сжатия, одна из констант
ZipArchive::CM_*
. -
comp_flags
-
Уровень сжатия.
Возвращаемые значения
Возвращает 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 'ошибка';
}
?>