Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > PHP > PHP-Programmierung > GZip-Komprimierung mehrerer Dateien mittels PHP

Layoutprobleme? - Styleswitcher!

Antwort
 
Themen-Optionen
Alt 03.04.2007, 16:11 Nach oben    #1
Chr!s
Christian Mühlroth
 
Benutzerbild von Chr!s
 
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 557
Standard GZip-Komprimierung mehrerer Dateien mittels PHP

Tag,
ich hab im Web leider nichts dazu finden können, auch nicht im Manual, darum frag ich mal hier.

Mittels getFileList() lass ich mir rekursiv alle Dateien sammeln, die in $sBackupDir existieren. Nun möchte ich alle Dateien in einem GZip-Archiv speichern.
PHP-Code:
<?php
$aFileList 
FileCrawler::getFileList($sBackupDirectory);
$rGzHandle gzopen($sBackupFile'w9');

foreach(
$aFileList AS $sFile) {
        
$rHandle fopen($sFile'rb');
        
$iFileSize filesize($sFile);
        
$sData fread($rHandle, ($iFileSize 0) ? $iFileSize 1);
        
fclose($rHandle);

        
gzwrite($rGzHandle$sData);
}

gzclose($rGzHandle);
Mit dieser Funktion speichere ich allerdings nur den Inhalt aller Dateien in dem GZip-Archiv - ein wiederherstrellen ist daher unmöglich. Ich will aber, wie bei einem ganz normalem Archiv, alle meine Datien komprimiert darin finden.
Auf php.net habe ich nur immer Möglichkeiten zum komprimieren einzelner Dateien gefunden, jedoch nicht die Möglichkeit, mehrere Dateien zu einem Archiv zusammenzufassen.
Wie geht das?
__________________
http://www.ChrisDiary.De

Geändert von Chr!s (03.04.2007 um 17:23 Uhr).
Chr!s ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.04.2007, 19:21 Nach oben    #2
JumperII
Erfahrener Benutzer
 
Benutzerbild von JumperII
 
Registriert seit: 27.02.2006
Beiträge: 136
Standard

Hallo,

M.E. ist gzip ein SingleFile-Komprimierungsformat. Um mehrere Dateien zusammenzufassen musst du sie vorher erst einmal in eines packen, z.B. mittels TAR. Das Ergebnis wäre dann ein *.tar.gz bzw. *.tgz.

Die eigentliche Frage dabei ist, ob man tar als externes Tool aufruft oder es intern verwenden will.

Eine andere Variante wäre, indem du die eingespeicherten Daten mit einer eigenen Dateiverwaltung in das File legst ... Allerdings kann dann auch nur dein Tool den Inhalt auswerten und entpacken

Gruß,
Jumper, the II.

/EDIT: Hier ein TAR-Beispiel PHP-Hilfe; Kommentar!

Geändert von JumperII (03.04.2007 um 19:23 Uhr).
JumperII ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.04.2007, 19:32 Nach oben    #3
Jann Hendrik
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 1.539
Standard

Die Antwort weiß ich leider auch nicht weiß, aber ggf. ist da was bei?
http://www.zend.com/zend/spotlight/c...zip-files1.php
http://www.phpconcept.net/pclzip/index.en.php
http://www.ruinelli.ch/bysu

Wobei sich das mehr auf zip-files bezieht.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

die aktuelle Umfrage: Wo kauft ihr eure Literatur?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.04.2007, 19:06 Nach oben    #4
bobby
Christian Schuhmann
 
Benutzerbild von bobby
 
Registriert seit: 09.03.2007
Ort: Nürnberg
Beiträge: 52
Standard

Vielleicht hilft dir ja http://pear.php.net/package/Archive_Tar weiter.

bobby.
bobby ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.04.2007, 14:10 Nach oben    #5
Chr!s
Christian Mühlroth
 
Benutzerbild von Chr!s
 
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 557
Standard

Zitat:
Zitat von JumperII
Hallo,

M.E. ist gzip ein SingleFile-Komprimierungsformat. Um mehrere Dateien zusammenzufassen musst du sie vorher erst einmal in eines packen, z.B. mittels TAR. Das Ergebnis wäre dann ein *.tar.gz bzw. *.tgz.
Hm ja da hast du Recht, danke.
Danke für die Links.
__________________
http://www.ChrisDiary.De
Chr!s ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

« Fehlermeldung: bei preg_match() | Navigation »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[PHP] Simples Caching System mittels Dateien Chr!s Tutorials 5 05.11.2006 00:55
Gruppierte Rechteverwaltung mittels PHP und MySQL Chr!s PHP-Programmierung 18 18.10.2006 14:06
PHP 5.1.5, PHP 4.4.4 und PHP 5.2.0 RC2 veröffentlicht Ben Nachrichten 2 01.09.2006 16:05
[PHP] FTP-Funktionen in PHP nutzen MrNiceGuy Tutorials 0 24.05.2006 14:18
[PHP] Erstellung und Bearbeitung von Bildern mittels PHP WarrenFaith Tutorials 1 23.08.2005 15:30


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:02 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.6.7, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44