ZipArchive::setCompressionName

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

ZipArchive::setCompressionNameSet the compression method of an entry defined by its name

说明

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

Set the compression method of an entry defined by its name.

参数

name

Name of the entry.

method

The compression method, one of the ZipArchive::CM_* constants.

compflags

Compression level.

返回值

成功时返回 true, 或者在失败时返回 false

范例

示例 #1 Add files with different compression methods to an archive

<?php
$zip 
= new ZipArchive;
$res $zip->open('test.zip'ZipArchive::CREATE);
if (
$res === TRUE) {
    
$zip->addFromString('foo''Some text');
    
$zip->addFromString('bar''Some other text');
    
$zip->setCompressionName('foo'ZipArchive::CM_STORE);
    
$zip->setCompressionName('bar'ZipArchive::CM_DEFLATE);
    
$zip->close();
    echo 
'ok';
} else {
    echo 
'failed';
}
?>

示例 #2 Add file and set compression method

<?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';
}
?>