Hi,
Sollte natürlich heißen 140kByte und 200kByte sodass es dann zu einem Speicherbedarf von möglichst nicht mehr als 1MByte für das Array führt. Das ist für PHP kein Problem. Was soll da jenseits von Gut und Böse sein?
auch wenn die Verwaltung dieser Datenmasse kein Problem darstellen mag - sprich: PHP da noch nicht an seine Grenzen gestoßen ist - muss sie zunächst einmal geladen, analysiert und in ein Speichermodell übersetzt worden sein, sowie der entsprechende Arbeitsspeicher vom Betriebssystem verwaltet werden. Das Laden kompletter Dateien in den Speicher, wenn man nur einen winzigen Ausschnitt derselben braucht, ist _immer_ und in _jeder_ Sprache ein Fehler.
Was genau das ist, was man beim kompletten Einlesen auch tut - mit allen Zeilen, statt nur mit denen, die man braucht, bis das Ergebnis gefunden wurde.
Aber Zeile für Zeile nacheinander.
Mit anschließender Freigabe (genauer gesagt: Wiederverwendung) des Speichers.
Irgendwann könnte dann der beliebte out of memory error kommen, gegen den man ab 4.3.2 Version was tun kann.
Workarounds für die Nachteile eines schlechten Konzepts? Ich empfehle, lieber gleich auf den wesentlich besseren Mechanismus zurückzugreifen, nicht mehr Daten zu halten, als man wirklich benötigt. Das ist ein Grundprinzip der Programmierung.
Cheatah
X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes