Einzelnes Verzeichnis aus Zip-Archiv mit php und ZipArchiv entpacken

Flattr this
Tweet this: Einzelnes Verzeichnis aus Zip-Archiv mit php und ZipArchiv entpacken
Dent this: Einzelnes Verzeichnis aus Zip-Archiv mit php und ZipArchiv entpacken
Tags: PHP, Zip, ZipArchive
Mit diesem Schnipsel kann man automatisch einen einzelnen Ordner und alle Ordner und Dateien darin in ein Verzeichnis entpacken.
Dabei bleibt die Verzeichnisstruktur erhalten, inklusive dem Verzeichnis das man entpacken will.
<?php
$absolutePath = realpath('tmp/'); // Absoluter Pfad wohin man entpacken will
$directory = '/archiv'; // Verzeichnis im Archiv das man entpacken will
$archiv = new ZipArchive();
$archiv->open('archiv.zip');
$i = 0;
$entries = array();
// Alle Dateien raussuchen deren Pfad mit dem gewünschten Pfad anfängt
while(false !== ($stat = $archiv->statIndex($i))) {
    if (strpos($stat['name'], $directory ) === 0) {
        echo $stat['name'] . '<br />';
        $entries[] = $stat['name'];
    }
    $i++;
}
// nur die gewünschten Einträge entpacken
// allerdings wird dabei die Archiv-Struktur inklusive $directory beibehalten.
$archiv->extractTo($absolutePath, $entries); 

Trackbacks (0)

Trackbackurl: http://www.robo47.net/trackback/snippet/17

Es sind keine Trackbacks vorhanden.


Kommentare (0)

Es sind noch keine Kommentare vorhanden.

Die Kommentare zu diesem Beitrag sind gesperrt.

You liked it ? Link it on your homepage or blog: