ZipArchive::locateName
ZipArchive::renameIndex
ZipArchive
PHP Manual

# ZipArchive::open

Open a ZIP file archive

### Description

mixed ZipArchive::open ( string `$filename` [, int `$flags` ] )

Opens a new zip archive for reading, writing or modifying.

### Parameters

`filename`

  The file name of the ZIP archive to open.

`flags`

  The mode to use to open the archive.

  - `ZipArchive::OVERWRITE`

  - `ZipArchive::CREATE`

  - `ZipArchive::EXCL`

  - `ZipArchive::CHECKCONS`

### Return Values

`Error codes`

  Returns `TRUE` on success or the error code.

  - `ZipArchive::ER_EXISTS`

    File already exists.

  - `ZipArchive::ER_INCONS`

    Zip archive inconsistent.

  - `ZipArchive::ER_INVAL`

    Invalid argument.

  - `ZipArchive::ER_MEMORY`

    Malloc failure.

  - `ZipArchive::ER_NOENT`

    No such file.

  - `ZipArchive::ER_NOZIP`

    Not a zip archive.

  - `ZipArchive::ER_OPEN`

    Can't open file.

  - `ZipArchive::ER_READ`

    Read error.

  - `ZipArchive::ER_SEEK`

    Seek error.

### Examples

Example #1 Open and extract

`<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip');
if ($res === TRUE) {
echo 'ok';
$zip->extractTo('test');
$zip->close();
} else {
echo 'failed, code:' . $res;
}
?>`

Example #2 Create an archive

`<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
$zip->addFromString('test.txt', 'file content goes here');
$zip->addFile('data.txt', 'entryname.txt');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>`