externe Datei kopieren

spamcam

Grünschnabel
Frohes Fest ^^

ich habe folgendes Problem...

Ich habe eine Zip-Datei(diese wird dynamisch generiert und mit readfile und header ausgegeben) von einem anderen Server mit einer Browserklasse(Snoopy) ausgelesen und mit fwrite in eine neue Zip-Datei geschrieben. Dies hat bisher bestens funktioniert.

Allerdings hat sich die Datei mittlerweile auf 13-14MB vergrößert...
mit 4 MB gab es keine Probleme nun erhalte ich die Fehlermeldung
dass der maximale Speicher überschritten wird und das Script bricht ab.

Meine Möglichkeiten sind sehr beschränkt weil der Webspace auf dem mein Script läuft ist ein einfacher bei 1&1. Auf die Größe der externen Zip-Datei habe ich keinen Einfluss und den realen Pfad habe ich auch nicht. Frohe Weihnachten also.
Einzige Alternative wäre die Datei manuell runterzuladen und auf meinen Webspace wieder hochzuladen
und dann zu verwenden :o( aber dies wäre mehr als nur nervig da die Datei durch die Anbindung der beiden Server sehr schnell kopiert wurde/wird.

Mein Script im Detail:
PHP:
// Datei kopieren
$snoopy = new Snoopy;
if($snoopy->fetch("http://www.externeseite.de/dateidownload.php?id=id")){
	
	$fp = fopen("meinedatei.zip","w+");
	if(fwrite($fp,$snoopy->results)){
		echo "Datei kopiert!";
	}
	else{
		echo "Datei nicht kopiert!";
	}
	fclose($fp);
	
}

Hat jemand einen Ansatz für eine andere Lösung?

Allen schöne Weihnachten
 
Kenne Snoopy jetzt spontan gar nicht, aber warum nicht die PHP FTP Funktionen nutzen?
Oder wenn diese nicht zur Verfügung stehen, schau doch mal in den Tutorials nach, dort ist eine Ersatzklasse von Dennis Wronka.
 
Hallo Dennis Wronka,

danke für deinen Tipp, scheint eine ähnliche Klasse wie Snoopy und diese Browserklasse zu sein.

Allerdings mußte ich feststellen dass es nicht an der Klasse an sich liegt sondern die Größe der Datei selbst 14 MB ist das Problem. Die läßt sich auf diesem Weg nicht kopieren unabhängig von der verwendeten Klasse.

Macht aber nichts, durch Zufall habe ich den wirklichen Pfad auf die Zip-Datei gefunden und kann sie mittlerweile einfach per copy Befehl kopieren.

Totzdem vielen Dank für eure Antworten und ein guten Rutsch ins neue Jahr :-)
 
Zurück