Always check if the file $filename exists. Zip file generation will fail without any warning if it does not.
ZipArchive::addFile
(PHP 5 >= 5.2.0, PECL zip >= 1.1.0)
ZipArchive::addFile — Fügt eine Datei von einem gegebenen Pfad zu einem ZIP-Archiv hinzu
Beschreibung
$filename
[, string $localname = NULL
[, int $start = 0
[, int $length = 0
]]] )Fügt eine Datei von einem gegebenen Pfad zu einem ZIP-Archiv hinzu.
Parameter-Liste
-
filename -
Der Pfad zur hinzuzufügenden Datei.
-
localname -
Falls übergeben, ist dies der lokale Name innerhalb des ZIP-Archives, der den
filenameüberschreibt. -
start -
Dieser Parameter wird nicht genutzt, aber benötigt, um ZipArchive zu erweitern.
-
length -
Dieser Parameter wird nicht genutzt, aber benötigt, um ZipArchive zu erweitern.
Rückgabewerte
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiele
Dieses Beispiel öffnet ein ZIP-Dateiarchiv test.zip und fügt die Datei /pfad/zur/datei.txt als neuername.txt hinzu.
Beispiel #1 Öffnen und extrahieren
<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->addFile('/pfad/zur/datei.txt', 'neuername.txt');
$zip->close();
echo 'ok';
} else {
echo 'Fehler';
}
?>
Anmerkungen
Hinweis:
Falls eine Datei zu einem Archiv hinzugefügt werden soll, wird PHP versuchen, die Datei zu sperren; die Sperre wird erst gelöst, nachdem die ZIP Operation beendet ist. Kurz gesagt bedeutet dies, dass eine hinzugefügte Datei erst gelöscht werden kann, nachdem das Archiv geschlossen(close()) wurde.
