ZipArchive::addFile
(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)
ZipArchive::addFile — Fügt eine Datei von einem gegebenen Pfad zu einem ZIP-Archiv hinzu
Beschreibung
string
$filepath
,string
$entryname
= "",int
$start
= 0,int
$length
= 0,int
$flags
= ZipArchive::FL_OVERWRITE): bool
Fügt eine Datei von einem gegebenen Pfad zu einem ZIP-Archiv hinzu.
Hinweis: Für maximale Portierbarkeit wird empfohlen, in ZIP-Dateinamen immer Schrägstriche (
/
) als Verzeichnis-Trennzeichen zu verwenden.
Parameter-Liste
-
filepath
-
Der Pfad zur hinzuzufügenden Datei.
-
entryname
-
Falls übergeben und nicht leer, ist dies der lokale Name innerhalb des ZIP-Archives, der den
filepath
überschreibt. -
start
-
Die Startposition für partielles Kopieren.
-
length
-
Die Länge für partielles Kopieren; wenn 0 oder -1, wird die gesamte Datei (beginnend bei
start
) verwendet. -
flags
-
Eine Bitmaske bestehend aus
ZipArchive::FL_OVERWRITE
,ZipArchive::FL_ENC_GUESS
,ZipArchive::FL_ENC_UTF_8
,ZipArchive::FL_ENC_CP437
. Das Verhalten dieser Konstanten wird in der ZIP-Konstanten Seite beschrieben.
Rückgabewerte
Gibt bei Erfolg true
zurück. Bei einem Fehler wird false
zurückgegeben.
Changelog
Version | Beschreibung |
---|---|
8.0.0 / 1.18.0 |
flags wurde hinzugefügt.
|
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 hinzufügen
<?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 die Datei sperren; die Sperre wird erst gelöst, nachdem das ZipArchive-Objekt geschlossen wurde, entweder per ZipArchive::close(), oder weil das ZipArchive-Objekt zerstört wurde. Dies kann dazu führen, dass die hinzuzufügende Datei erst gelöscht werden kann nachdem die Sperre gelöst wurde.