ZipArchive::setCompressionName

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

ZipArchive::setCompressionName名前で定義されたエントリの圧縮メソッドを設定する

説明

public ZipArchive::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''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 ファイルを追加し、圧縮メソッドを設定する

<?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';
}
?>
関連キーワード:  圧縮, メソッド, 名前, エントリ, 設定, 定義, ZipArchive, setCompressionName, compflags, int