ZipArchive
PHP Manual

ZipArchive::setExternalAttributesName

(PHP 5 >= 5.6.0, PHP 7, PECL zip >= 1.12.4)

ZipArchive::setExternalAttributesNameУстановка внешних атрибутов записи, заданной по имени

Описание

bool ZipArchive::setExternalAttributesName ( string $name , int $opsys , int $attr [, int $flags ] )

Установка внешних атрибутов записи, заданной по имени.

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

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($filenameZipArchive::OPSYS_UNIX$stat['mode'] << 16);
    
$zip->close();
    echo 
"Ok\n";
} else {
    echo 
"KO\n";
}
?>

ZipArchive
PHP Manual