Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
ziplib [2017/02/22 10:24] webproducer angelegt |
ziplib [2019/09/04 21:40] (aktuell) webproducer GZip |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== ZIPlib - ZIP-Archiv mit PHP erstellen ====== | + | ====== ZIP-Archiv mit PHP erstellen ====== |
| + | |||
| + | ===== Libzip ===== | ||
| + | |||
| + | Wenn bei Ihrer PHP-Version Libzip aktiviert ist können Sie direkt mit PHP ZIP-Archive erstellen. Dies können Sie durch den Aufruf der Funktkion phpinfo() herausfinden: | ||
| + | |||
| + | {{:php:php:libzip.gif?direct|}} | ||
| + | |||
| + | <code php> | ||
| + | private function createZipFile( $origFilename ) | ||
| + | { | ||
| + | $zip = new ZipArchive(); | ||
| + | $zip->open( 'dateiname.zip', ZipARCHIVE::CREATE ); | ||
| + | $zip->addFile( $origFilename ); | ||
| + | $zip->close(); | ||
| + | |||
| + | unlink( $origFilename ); // Original-Datei wieder entfernen | ||
| + | } | ||
| + | |||
| + | </code> | ||
| + | |||
| + | Sollte Lipzip bei Ihnen nicht aktiv sein ist der Einsatz der nachfolgend beschriebenden PHP-Klasse ZIPlib möglich | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== ZIPlib ===== | ||
| Mit der PHP-Libary "ZIPlib" von Pascal Rehfeldt ist möglich in PHP ohne großen Aufwand ein ZIP-Archiv mit beliebig vielen Dateien zu erstellen. | Mit der PHP-Libary "ZIPlib" von Pascal Rehfeldt ist möglich in PHP ohne großen Aufwand ein ZIP-Archiv mit beliebig vielen Dateien zu erstellen. | ||
| Zeile 13: | Zeile 38: | ||
| Dokumentation des Autors: http://valentin.dasdeck.com/php/sfx/files/readme.txt | Dokumentation des Autors: http://valentin.dasdeck.com/php/sfx/files/readme.txt | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ===== gzip ===== | ||
| + | |||
| + | Gzip ist ein freies, plattformunabhängiges Kompressionsformat. | ||
| + | |||
| + | |||
| + | <code php> | ||
| + | /** | ||
| + | * @param string $filename | ||
| + | */ | ||
| + | private function createGzipFile( &$filename ) | ||
| + | { | ||
| + | $csvContent = file_get_contents( $filename ); // Datei-Inhalt in eine Variable speichern | ||
| + | unlink( $filename ); // Original-Datei entfernen | ||
| + | |||
| + | $filename = $filename . '.gz'; | ||
| + | $fp = gzopen( $filename, 'w9' ); | ||
| + | |||
| + | gzwrite( $fp, $csvContent ); | ||
| + | gzclose( $fp ); | ||
| + | } | ||
| + | |||
| + | </code> | ||