Hallo,
header('Content-Type: image/jpeg');
print file_get_contents($filename);
hier würde ich eher readfile() empfehlen. Denn file_get_contents() liest zwangsläufig erst den kompletten Dateiinhalt und legt ihn temporär im Arbeitsspeicher ab, sofern das MEMORY_LIMIT ausreichend hoch ist. Ist die Datei größer als der für PHP zur Verfügung stehende Arbeitsspeicher, geht das schief. Okay, bei Bildern eher unwahrscheinlich, aber mal als grundsätzliche Überlegung.
Dagegen ist readfile() nicht auf Zwischenspeichern angewiesen und *könnte* die Daten auch in kleinen Häppchen durchreichen und so auch Dateien von mehreren 100MB ausgeben. Ich weiß nicht, ob das so implementiert ist, würde das aber zumindest erwarten.
So long,
Martin
--
Der Stress von heute ist die gute alte Zeit von morgen.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
Der Stress von heute ist die gute alte Zeit von morgen.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(