PHP Conference Japan 2024

ZipArchive::getExternalAttributesIndex

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

ZipArchive::getExternalAttributesIndex检索由其索引定义的条目的外部属性

描述

public ZipArchive::getExternalAttributesIndex(
    int $index,
    int &$opsys,
    int &$attr,
    int $flags = 0
): bool

检索由其索引定义的条目的外部属性。

参数

index

条目的索引。

opsys

成功时,接收由 ZipArchive::OPSYS_ 常量之一定义的操作系统代码。

attr

成功时,接收外部属性。值取决于操作系统。

flags

如果 flags 设置为 ZipArchive::FL_UNCHANGED,则返回原始未更改的属性。

返回值

成功时返回 true,失败时返回 false

示例

此示例提取 ZIP 归档文件 test.zip 的所有条目,并从外部属性设置 Unix 权限。

示例 #1 提取所有具有 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 >> 16) & 0777);
}
}
}
$zip->close();
echo
"Ok\n";
} else {
echo
"KO\n";
}
?>
添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top