PHP ZIP函数

PHP ZipArchive 类表示使用 Zip 压缩的文件存档。

类概要

class ZipArchive implements Countable {
  //属性
  public readonly int $lastId;
  public readonly int $status;
  public readonly int $statusSys;
  public readonly int $numFiles;
  public readonly string $filename;
  public readonly string $comment;

  //方法
  public addEmptyDir(string $dirname, int $flags = 0): bool
  public addFile(string $filepath, string $entryname = "",
                 int $start = 0, int $length = 0,
                 int $flags = ZipArchive::FL_OVERWRITE): bool
  public addFromString(string $name, string $content, 
                       int $flags = ZipArchive::FL_OVERWRITE): bool
  public addGlob(string $pattern, int $flags = 0, 
                  array $options = []): array|false
  public addPattern(string $pattern, string $path = ".", 
                    array $options = []): array|false
  public clearError(): void
  public close(): bool
  public count(): int
  public deleteIndex(int $index): bool
  public deleteName(string $name): bool
  public extractTo(string $pathto, array|string|null $files = null): bool
  public getArchiveComment(int $flags = 0): string|false
  public getCommentIndex(int $index, int $flags = 0): string|false
  public getCommentName(string $name, int $flags = 0): string|false
  public GetExternalAttributesIndex(int $index, int &$opsys, 
                                    int &$attr, int $flags = ?): bool
  public getExternalAttributesName(string $name, int &$opsys,
                                   int &$attr, int $flags = 0): bool
  public getFromIndex(int $index, int $len = 0, 
                      int $flags = 0): string|false
  public getFromName(string $name, int $len = 0, 
                     int $flags = 0): string|false
  public getNameIndex(int $index, int $flags = 0): string|false
  public getStatusString(): string
  public getStream(string $name): resource|false
  public getStreamIndex(int $index, int $flags = 0): resource|false
  public getStreamName(string $name, int $flags = 0): resource|false
  public static isCompressionMethodSupported(int $method, 
                                             bool $enc = true): bool
  public static isEncryptionMethodSupported(int $method, 
                                            bool $enc = true): bool
  public locateName(string $name, int $flags = 0): int|false
  public open(string $filename, int $flags = 0): bool|int
  public registerCancelCallback(callable $callback): bool
  public registerProgressCallback(float $rate, callable $callback): bool
  public renameIndex(int $index, string $new_name): bool
  public renameName(string $name, string $new_name): bool
  public replaceFile(string $filepath, string $index, int $start = 0,
                    int $length = 0, int $flags = 0 ): bool
  public setArchiveComment(string $comment): bool
  public setCommentIndex(int $index, string $comment): bool
  public setCommentName(string $name, string $comment): bool
  public setCompressionIndex(int $index, int $method, 
                             int $compflags = 0): bool
  public setCompressionName(string $name, int $method, 
                            int $compflags = 0): bool
  public setEncryptionIndex(int $index, int $method, 
                            ?string $password = null): bool
  public setEncryptionName(string $name, int $method, 
                           ?string $password = null): bool
  public setExternalAttributesIndex(int $index, int $opsys, 
                                    int $attr, int $flags = 0): bool
  public setExternalAttributesName(string $name, int $opsys,
                                   int $attr, int $flags = 0 ): bool
  public setMtimeIndex(int $index, int $timestamp, int $flags = 0): bool
  public setMtimeName(string $name, int $timestamp, int $flags = 0): bool
  public setPassword(string $password): bool
  public statIndex(int $index, int $flags = 0): array|false
  public statName(string $name, int $flags = 0): array|false
  public unchangeAll(): bool
  public unchangeArchive(): bool
  public unchangeIndex(int $index): bool
  public unchangeName(string $name): bool
} 

属性

lastId最后添加条目(文件或目录)的索引值。自 PHP 8.0.0 和 PECL zip 1.18.0 起可用。
statusZip 存档的状态。从 PHP 8.0.0 和 PECL zip 1.18.0 开始,可用于封闭存档。
statusSys系统状态邮政档案馆。从 PHP 8.0.0 和 PECL zip 1.18.0 开始,可用于封闭存档。
numFiles文件数量
filename文件系统中的文件名。
comment对存档的评论。