(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)
ZipArchive::addFile — Yolu belirtilen dosyayı arşive ekler
$dosyayolu
,$girdiadı
= "",$başlangıç
= 0,$uzunluk
= ZipArchive::LENGTH_TO_END,$seçenekler
= ZipArchive::FL_OVERWRITEYolu belirtilen dosyayı arşive ekler.
Bilginize: Taşınabilirliği arttırmak için ZIP dosya isimlerinde dizin ayracı olarak bölü çizgilerini (
/
) kullanın.
dosyayolu
Eklenecek dosyanın yolu.
girdiadı
Belirtilmişse ve boş değilse dosyanın ZIP arşivi içindeki ismi olup dosyayolu
nu geçersiz kılar.
başlangıç
Kısmi kopya için başlangıç konumu.
uzunluk
Kısmi kopya için kopyalanan uzunluk; ZipArchive::LENGTH_TO_END
(0) ise dosya boyutu, ZipArchive::LENGTH_UNCHECKED
ise dosyanın tamamı kullanılır.
seçenekler
ZipArchive::FL_OVERWRITE
, ZipArchive::FL_ENC_GUESS
, ZipArchive::FL_ENC_UTF_8
, ZipArchive::FL_ENC_CP437
, ZipArchive::FL_OPEN_FILE_NOW
sabitlerinin bit maskesi. Bu sabitlerin davranışı ZIP sabitleri sayfasında açıklanmıştır.
Sürüm: | Açıklama |
---|---|
8.3.0 / 1.22.1 | ZipArchive::FL_OPEN_FILE_NOW eklendi. |
8.3.0 / 1.22.2 | ZipArchive::LENGTH_TO_END ve ZipArchive::LENGTH_UNCHECKED sabiti eklendi. |
8.0.0 / 1.18.0 | seçenekler eklendi. |
Bu örnekte test.zip adında bir ZIP arşivi açılıp /path/to/index.txt dosyası newname.txt ismiyle arşive eklenmektedir.
Örnek 1 - Aç ve ekle
<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->addFile('/path/to/index.txt', 'newname.txt');
$zip->close();
echo 'Tamam';
} else {
echo 'olmadı';
}
?>
Bilginize:
Bir dosya arşive eklenecekse, PHP dosyayı kilitler. Kilit, yalnızca ZipArchive nesnesi kapatıldığında, ZipArchive::close() veya ZipArchive nesnesi yok edildiğinde serbest bırakılır. Kilit serbest bırakılana kadar eklenen dosyayı silmeniz engellenebilir.