ZipArchive::open
PHP Manual
PHP Manual»ZipArchive»ZipArchive::open

ZipArchive::open

(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)

ZipArchive::open — Bir ZIP dosya arşivi açar

Açıklama

public function ZipArchive::open(string $dosya, int $seçenekler = 0): bool|int

Okumak, yazmak veya değiştirmek amacıyla bir zip arşivi açar.

libzip 1.6.0'dan beri, boş dosya artık geçerli bir arşiv değil.

Bağımsız Değişkenler

dosya

Açılacak ZIP arşivinin dosya ismi.

seçenekler

Arşivin açılacağı kip; şu sabitlerden biridir:

Dönen Değerler

Başarı durumunda true yoksa aşağıdaki hata kodarından biri döner:

ZipArchive::ER_EXISTS

Dosya zaten mevcut.

ZipArchive::ER_INCONS

Zip arşivi tutarsız.

ZipArchive::ER_INVAL

Geçersiz bağımsız değişken.

ZipArchive::ER_MEMORY

Malloc hatası.

ZipArchive::ER_NOENT

Böyle bir dosya yok.

ZipArchive::ER_NOZIP

Bir zip arşivi değil.

ZipArchive::ER_OPEN

Dosya açılamiyor.

ZipArchive::ER_READ

Okuma hatası.

ZipArchive::ER_SEEK

Konumlama hatası.

Örnekler

Örnek 1 - Bir arşivi açıp içeriğini dökmek

<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip');
if ($res === TRUE) {
    echo 'Tamam';
    $zip->extractTo('test');
    $zip->close();
} else {
    echo 'Olmadı, kod:' . $res;
}
?>

Örnek 2 - Bir arşiv oluşturmak

<?php
$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
if ($res === TRUE) {
    $zip->addFromString('test.txt', 'Bu dizge dosyanın içeriğidir.');
    $zip->addFile('data.txt', 'entryname.txt');
    $zip->close();
    echo 'Tamam';
} else {
    echo 'Olmadı';
}
?>

Örnek 3 - Geçici bir arşiv oluşturma

<?php
$name = tempnam(sys_get_temp_dir(), "FOO");
$zip = new ZipArchive;
$res = $zip->open($name, ZipArchive::OVERWRITE); // boş dosya budanmaz
if ($res === TRUE) {
    $zip->addFile('data.txt', 'entryname.txt');
    $zip->close();
    echo 'Tamam';
} else {
    echo 'Olmadı';
}
?>
To Top