Antworten auf deine Fragen:
Neues Thema erstellen

[PHP] zippen großer Dateien

jens260181

Schmarotzer

Hallo,

ich nutze ein Script zum zippen von Dateien. das funktioniert auch soweit ganz gut. Nur wird die zu zippende Datei zu groß (ab 20 MB ungefähr), wird diese nicht mehr gezippt und das Script bricht ab.

Gibt es eine Möglichkeit auch Dateien zu zippen, die 50 MB und größer sind?
 

Duddle

Posting-Frequenz: 14µHz

AW:
PHP:
 zippen großer Dateien[/b]

Das Script wird wohl abbrechen, weil die Laufzeit von PHP-Scripten in der Regel begrenzt ist. Du musst also entweder die Serverkonfiguration entsprechend ändern oder im Script mit [URL="http://de2.php.net/set_time_limit"]set_time_limit()[/URL] die maximale Ausführungszeit ändern.


Duddle
 

stroyer

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Beziehungsweise wenn die Website auf einem freien Webserver gehostet ist wirst du das Problem haben, dass du das Time-Limit nicht ändern kannst. Sprich dann gibt es eigentlich keine Möglichkeit so große Archiv-Operationen auszuführen.
 

jens260181

Schmarotzer

AW:
PHP:
 zippen großer Dateien[/b]

zum Webspace sage ich nur ARCOR.

Naja, da es sich um Dokumente handelt, habe ich diese jetzt als PDF gespeichert. Somit ist die Größe nur noch 1/3 vom Original.

Das Zeitlimit geht im SAFE-MODE nicht. Das ist neben ARCOR das nächste Problem. 

Danke für die Antworten
 

stroyer

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Bei den meisten Webspaces ist es so, dass du bestimmte Einstellungen (z.B. maximale Scriptlaufzeit) nicht ändern darfst.
 

CIX88

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Zippen von großen Dateien ist eher in Verbindung mit exec() sinnvoll, setzt natürlich voraus das exec() auch verfügbar ist. Alles was über PHP läuft ist da nicht geeignet.
 

stroyer

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

[quote="jens260181, post: 856398"]zum Webspace sage ich nur ARCOR.[/quote]
Und ich vermute, dass dort zu 99,99%iger Wahrscheinlichkeit exec() deaktiviert ist. Soher gesehen ist die einzige Variante, dass du einen Server findest, wo dir sei es durch erweiterungen oder keinem Zeitlimit (ist wegen Endlosschleifen problematisch), sei es durch OS-Programme, die Möglichkeit zum schnellen Zippen großer Dateimengen bereit steht.
 

CIX88

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Ich glaube noch nicht einmal an das Zeitlimit. Wird aber sicherlich auch eine Rolle spielen. Aber solange wie das ZIP-File noch nicht fertig erstellt ist, wird alles im RAM zwischengespeichert -> memory_limit
Wenn er zum zippen exec() & Co nicht benutzt, kommt sicher eine PHP-Klasse zum Einsatz, und die buffert erstmal alles - ist so meine Vermutung. Und wenn ich dann etwas von „ab 20 MB” und Arcor lese, dann bestätigt das meine Vermutung.
 

stroyer

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Da hast du recht. Bei kostenlosen Webservern liegt das Limit bei ~8MB.
Aber vielleicht ginge es, wenn man die Datei vor dem Zippen zerstückelt. Inwiefern die Idee realisierbar ist/sein kann, hängt wieder genau vom Webserver ab.
 

CIX88

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Hmmm, naja bei solchen Fragen ist es lieber zu wissen, wie diese ZIP-Dateien erstellt werden. Dazu finde ich hier keinerlei genauen Angaben :( Nun ich habe hier auch eine PHP-Klasse für ZIP, welche aber die Dateien bzw. die Inhalte in einen Buffer schreibt bevor das endgültige Zip-File erstellt wird. Und wenn dann 30MB im Buffer liegen, dann würde das ähnliche Effekte, wie oben beschrieben, auch verursachen.

Naja, letztlich gibt es nur die Möglicheiten:

- auf das zippen verzichten
- richtigen Server suchen

und beim letzten könnte man mit:

exec('zip -r zip_name dateien);

den PHP-Umweg weglassen.
 
Zuletzt bearbeitet:

stroyer

Aktives Mitglied

AW:
PHP:
 zippen großer Dateien[/b]

Oder nur so viele Dateien in ein zip stecken, dass es sich platzmäßig im RAM ausgeht oder wenn die Dateien zu groß sind per Stream zerstückeln und dann am Computer zusammensetzen.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben