MIK: Komplettes Verzeichnis verzippen

Hallo zusammen!

Ich möchte ein gesamtes Verzeichnis mit mehreren Unterverzeichnissen verzippen (Ausgabe als .zip) und dann downloaden lassen. Ich habe bereits einige Funktionen in dieser Richtung gefunden (gzip, zip), allerdings schaut es so aus, als müsste man dafür zusätzliche Module installieren.

Hier im Forum habe ich auch schon gesucht, aber nur einen klassischen Streiterei-Thread gefunden.. Also meine Frage:

Kann ich mit einer "herkömmlichen", nicht erweiterten PHP-Version ein Verzeichnis mit allen darin befindlichen Unterverzeichnissen und Dateien in eine .zip-Datei verpacken und wenn ja, wie?

Freundlichen Gruß,

MIK

  1. Hi!

    Kann ich mit einer "herkömmlichen", nicht erweiterten PHP-Version ein Verzeichnis mit allen darin befindlichen Unterverzeichnissen und Dateien in eine .zip-Datei verpacken und wenn ja, wie?

    Du könntest einfach auf Unix-Systemen einfach per system() den tar-Befehl aufrufen.

    Schöne Grüße
    Julian

    1. Hallo Julian,

      Du könntest einfach auf Unix-Systemen einfach per system() den tar-Befehl aufrufen.

      Könntest Du mir freundlicherweise den exakten Wortlaut der Funktion verraten..?

      Schöne Grüße

      Ebenso,

      MIK

      1. Hi MIK,

        Du könntest einfach auf Unix-Systemen einfach per system() den tar-Befehl aufrufen.
        Könntest Du mir freundlicherweise den exakten Wortlaut der Funktion verraten..?

        system("tar cfz verzeichnis.tar.gz /verzeichnis");
        Ist zwar ungetestet, sollte aber gehen. Siehe auch "man tar" und http://php.net/system.

        Schöne Grüße
        Julian

  2. Hallo,

    ich benutze auf einem Server, der miserabel konfiguriert ist, aus PEAR[1] die Klasse Archive_Tar[2], die in der ursprünglichen Form[3] auch ohne PEAR funktioniert. Es sind 2-3 kleine Änderungen erforderlich, aber die Funktion ist klasse und die Lizenz[4] ist recht frei gestaltet.

    [1] http://pear.php.net/
    [2] http://pear.php.net/package/Archive_Tar
    [3] http://www.phpconcept.net/pcltar/index.en.php Nicht vom hässlichen Design abschrecken lassen, der PHP-Code scheint mir gut.
    [4] http://www.php.net/license/2_02.txt

    Gruß, Thoralf

    --
    Sic Luceat Lux!