(PHP 5 >= 5.6.0, PHP 7, PECL zip >= 1.12.4)
ZipArchive::setExternalAttributesName — Définit les attributs étendus d'une entrée définie par son nom
$name
, int $opsys
, int $attr
[, int $flags
] )Définit les attributs étendus d'une entrée définie par son nom.
nameNom de l'entrée.
opsysCode du système d'exploitation, définie par une des constantes ZipArchive::OPSYS_.
attrAttributs étendus, la valeur dépend du système d'exploitation.
flagsIndicateurs optionnels, valeur non utilisée actuellement.
Cette fonction retourne TRUE en cas de
succès ou FALSE si une erreur survient.
Cet example crée une archive ZIP test.zip et ajoute le fichier test.txt ainsi que ses permissions Unix dans les attributs étendus.
Exemple #1 Archive un fichier avec ses droits 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";
}
?>