ZipArchive::setExternalAttributesName

名前で定義されたエントリの外部属性を設定する

説明

public bool ZipArchive::setExternalAttributesName(
    string $name,
    int $opsys,
    int $attr,
    int $flags = 0
)

名前で定義されたエントリの外部属性を設定します。

パラメータ

name

エントリの名前

opsys

ZipArchive::OPSYS_ 定数のうちのひとつで定義された、 オペレーティングシステムコード

attr

外部属性。 値はオペレーティングシステム依存です。

flags

オプションのフラグ。現在は使われていません。

戻り値

成功した場合に true を、失敗した場合に false を返します。

この例は、ZIPファイルアーカイブ test.zip を開き、 ファイル test.txt を 外部属性として Unix権限を付けて追加しています。

例1 Unix権限付きでファイルをアーカイブする

<?php
$zip = new ZipArchive();
$stat = stat($filename='test.txt');
if (is_array($stat) && $zip->open('test.zip', ZipArchive::CREATE) === TRUE) {
    $zip->addFile($filename);
    $zip->setExternalAttributesName($filename, ZipArchive::OPSYS_UNIX, $stat['mode'] << 16);
    $zip->close();
    echo "Ok\n";
} else {
    echo "KO\n";
}
?>