(PHP 5 >= 5.6.0, PHP 7, PHP 8, PECL zip >= 1.12.4)
ZipArchive::setExternalAttributesName — Définit les attributs externes d'une entrée définie par son nom
$name
,$opsys
,$attr
,$flags
= 0Définit les attributs externes d'une entrée définie par son nom.
name
Nom de l'entrée.
opsys
Code du système d'exploitation, définie par une des constantes ZipArchive::OPSYS_.
attr
Attributs externes, la valeur dépend du système d'exploitation.
flags
Drapeaux optionnels. Actuellement inutilisé.
Cette fonction retourne true
en cas de succès ou false
si une erreur survient.
Cet exemple 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";
}
?>