ZipArchive::getExternalAttributesIndex
(PHP 5 >= 5.6.0, PECL zip >= 1.12.4)
ZipArchive::getExternalAttributesIndex — Obtener los atributos externos de una entrada definida por su índice
Descripción
$index
, int &$opsys
, int &$attr
[, int $flags
] )Recuperar los atributos externos de una entrada definida por su índice.
Parámetros
-
index -
El índice de la entrada.
-
opsys -
En caso de éxito, recibe el código del sistema operativo definido por una de las constantes ZipArchive::OPSYS_.
-
attr -
En caso de éxito, recibe los atributos externos. El valor dependerá del sistema operativo.
-
flags -
Si flags se establece a
ZipArchive::FL_UNCHANGED, se devuelven los atributos originales sin cambios.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Ejemplos
Este ejemplo extrae todas las entradas de un archivo ZIP test.zip y asigna los permisos Unix tomados de los atributos externos.
Ejemplo #1 Extraer todas las entradas con permisos Unix
<?php
$zip = new ZipArchive();
if ($zip->open('test.zip') === TRUE) {
for ($idx=0 ; $s = $zip->statIndex($idx) ; $idx++) {
if ($zip->extractTo('.', $s['name'])) {
if ($zip->getExternalAttributesIndex($idx, $opsys, $attr)
&& $opsys==ZipArchive::OPSYS_UNIX) {
chmod($s['name'], ($attr & 07777));
}
}
}
$zip->close();
echo "Ok\n";
} else {
echo "KO\n";
}
?>