(PHP 5 >= 5.6.0, PHP 7, PECL zip >= 1.12.4)
ZipArchive::setExternalAttributesName — Définit les attributs externes d'une entrée définie par son nom
$name
, int $opsys
, int $attr
[, int $flags
] ) : boolDéfinit les attributs externes 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 externes, la valeur dépend du système d'exploitation.
flagsDrapeaux optionnels. Actuellement inutilisé.
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 externes.
Exemple #1 Archiver 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";
}
?>