查询

ZipArchive::statIndex()函数—用法及示例

「 获取压缩包中指定索引的文件的详细信息 」


函数名:ZipArchive::statIndex()

适用版本:PHP 5 >= 5.2.0, PHP 7, PHP 8

用法:ZipArchive::statIndex() 函数用于获取压缩包中指定索引的文件的详细信息。

语法:public ZipArchive::statIndex(int $index [, int $flags = ZipArchive::FL_UNCHANGED [, bool $skiproot = false ]]) : array|false

参数:

  • $index:指定要获取信息的文件在压缩包中的索引。索引从 0 开始。
  • $flags(可选):用于指定是否与已有的 ZipArchive 对象的文件信息进行比较。默认为 ZipArchive::FL_UNCHANGED,表示不比较。
  • $skiproot(可选):用于指定是否跳过根目录。默认为 false,表示不跳过。

返回值:如果成功,返回一个包含文件详细信息的关联数组,否则返回 false。

示例:

$zip = new ZipArchive;
if ($zip->open('archive.zip') === TRUE) {
    $index = 0; // 获取第一个文件的信息
    $fileInfo = $zip->statIndex($index);
    if ($fileInfo !== false) {
        echo "文件名:" . $fileInfo['name'] . "<br>";
        echo "压缩前大小:" . $fileInfo['size'] . "<br>";
        echo "压缩后大小:" . $fileInfo['comp_size'] . "<br>";
        echo "最后修改时间:" . date('Y-m-d H:i:s', $fileInfo['mtime']) . "<br>";
    } else {
        echo "获取文件信息失败";
    }
    $zip->close();
} else {
    echo "无法打开压缩包";
}

以上示例代码打开名为 "archive.zip" 的压缩包,并获取第一个文件的详细信息。如果成功获取到文件信息,则输出文件名、压缩前大小、压缩后大小和最后修改时间。如果无法打开压缩包或获取文件信息失败,则输出相应的错误信息。

注意:在使用该函数之前,需要先使用 ZipArchive::open() 函数打开压缩包。

补充纠错
上一个函数: ZipArchive::statName()函数
热门PHP函数
分享链接