PclZip - Pfade entfernen

qsrs

Erfahrenes Mitglied
Hallo,

verwende PclZip um mehrere Dateien zu zippen und herunter zu laden. Ich selektiere mehrere Dateien über eine Checkbox, welche dann als Zip herunter geladen werden. Das funktioniert soweit alles. Des Weiteren kann man mit PCLZIP_OPT_REMOVE_PATH die Verzeichnisstruktur entfernen, so dass die Dateien im Rootverzeichnis der Zip-Datei selbst liegen. Nun habe ich Haupt- und Subkategorien. Das sieht z.B. so aus

/files/hauptkategorie1/subkategorie1
/files/hauptkategorie2/subkategorie2
/files/hauptkategorie3/subkategorie3 usw.

Wenn ich die Option PCLZIP_OPT_REMOVE_PATH einbinde, und die Dateien die gezippt werden gehören der gleichen Haupt- und Subkategorie an, funktioniert das Entfernen des Pfades, wenn aber gleichzeitig Dateien aus unterschiedlichen Sub- und Hauptkategorien gezippt werden (also wenn sich die Pfade voneinander unterscheiden), funktioniert die Funktion PCLZIP_OPT_REMOVE_PATH nicht mehr und es werden wieder alle Unterverzeichnisse mit-gezippt.

Mein Script sieht so aus:
PHP:
 for ($i = 0; $i < count ($select); $i++) {
$zip_files .= "files/".$maincategory[$select[$i]]."/".$subcategory[$select[$i]]."/".$file_name[$select[$i]].",";
$remove_path = "files/".$maincategory[$select[$i]]."/".$subcategory[$select[$i]]."";
}
$archive = new PclZip ("files/temp/".$user_id."-".$array[id]."-".$file_date.".zip");
$v_list = $archive -> create ("$zip_files", PCLZIP_OPT_REMOVE_PATH, "".$remove_path."");
Habe die Pfade mit echo ausgegeben, diese stimmen alle.
Verwendet jemand PclZip und kann mir evtl. helfen? Was mache ich falsch?
 
Hat sich erledigt. Es gibt noch eine Funktion, welche alle Pfade automatisch entfernt: PCLZIP_OPT_REMOVE_ALL_PATH
 
Zurück