(PHP 5 >= 5.6.0, PHP 7, PECL zip >= 1.12.4)
Retrieve the external attributes of an entry defined by its index
bool ZipArchive::GetExternalAttributesIndex ( int $index, int &$opsys, int &$attr [, int $flags ] )
Retrieve the external attributes of an entry defined by its index.
Parameters:
index
Index of the entry.
opsys
On success, receive the operating system code defined by one of the ZipArchive::OPSYS_ constants.
attr
On success, receive the external attributes. Value depends on operating system.
flags
If flags is set to ZipArchive::FL_UNCHANGED
, the original unchanged attributes are returned.
Returns:
Returns TRUE
on success or FALSE
on failure.
Examples:
Extract all entries with Unix rights
This example extract all the entries of a ZIP archive test.zip and set the Unix rights from external attributes.
<?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"; } ?>
Please login to continue.