# ZipArchive::setExternalAttributesName

(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

### Description

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

Définit les attributs externes d'une entrée définie par son nom.

### Liste de paramètres

`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é.

### Valeurs de retour

Cette fonction retourne `true` en cas de succès ou `false` si une erreur survient.

### Exemples

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";
}
?>`