Hallo wahsaga,
Außerdem würde $Dateiinhalt nur einen Teil der Datei enthalten, wenn sie entsprechend lang ist, weil fread() nicht unbedingt die gesamte Datei am Stück liest.
Dafür hat er ja die Dateigröße als zweiten Parameter an fread übergeben.
das hilft aber nur bedingt. Die Beschreibung zu fread() sagt, dass die Funktion spätestens nach 8192 Bytes unterbricht, aber dieses Limit scheint sogar implementierungsabhängig zu sein. Erst kürzlich berichtete hier jemand von Problemen mit fread(), weil immer nur die ersten 1024 Bytes der gewünschten Datei gelesen wurden.
Deswegen *muss* man fread() in eine Schleife packen und solange weiterlesen, bis das Dateiende erreicht ist. Es ist kein Zufall, dass man Schleifen dieser Art häufig sieht:
while (!feof($file))
{ $buffer .= fread($file, BLOCKSIZE);
}
So long,
Martin
Mir geht es gut. Ich mag die kleinen Pillen, die sie mir dauernd geben.
Aber warum bin ich ans Bett gefesselt?