ZipArchive
PHP Manual

ZipArchive::getExternalAttributesIndex

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

ZipArchive::getExternalAttributesIndexRécupère les attributs étendus d'une entrée définie par son index

Description

bool ZipArchive::GetExternalAttributesIndex ( int $index , int &$opsys , int &$attr [, int $flags ] )

Récupére les attributs étendus d'une entrée définie par son index.

Liste de paramètres

index

Index de l'entrée.

opsys

En cas de succès, récupère le code du système d'exploitation défini par une des constantes ZipArchive::OPSYS_.

attr

En cas de succès, récupère les attributs étendus, la valeur dépend du système d'exploitation.

flags

Si cet indicateur est positionné à ZipArchive::FL_UNCHANGED, les valeurs originales sont retournées.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Cet exemple extrait toutes les entrées de l'archive ZIP test.zip et positionne les droits Unix à partir des attributs étendus.

Exemple #1 Extrait les entrées et leurs droits Unix

<?php
$zip 
= new ZipArchive();
if (
$zip->open('test.zip') === TRUE) {
    for (
$idx=$s $zip->statIndex($idx) ; $idx++) {
        if (
$zip->extractTo('.'$s['name'])) {
            if (
$zip->getExternalAttributesIndex($idx$opsys$attr
                && 
$opsys==ZipArchive::OPSYS_UNIX) {
               
chmod($s['name'], ($attr >> 16) & 0777);
            }
        }
    }
    
$zip->close();
    echo 
"Ok\n";
} else {
    echo 
"KO\n";
}
?>

ZipArchive
PHP Manual