Mailinglisten-Archive |
Hallo! Jan Harjes wrote: > $x=fopen($news_file,"r"); > $newsdata= chop(fgets($x,1500)); > while (!feof($x)) { > if (strlen($newsdata)>0 ){ > > $newsdata = trim($newsdata); > $daten = explode("``x",$newsdata); > > if ($daten[0]==$autor) { > usw... > } > } > > Gibt es vielleicht eine elegantere und vorallem schnellere Lösung für mein > Problem? Vielleicht ein etwas anderer Ansatz! Mit der folgenden Methode habe ich mal eine Datei ausgelesen, die mit sicherheit größer als 400KB war. Während dessen habe ich noch die Daten formatiert, durchsucht ect. $a = 0; $speichern = array(); // jede Zeile ein Element in der Array $artikel $artikel = file($news_file); for($i = 0; $i < count($artikel); $i++) { $daten = explode(":", $artikel[0]); if($daten[0] == $autor) { // jede gefundene Zeile abspeichern um später // weiter verarbeitet werden zu können $speichern[$a] = $artikel[$i]; $a++; } } Standardmäßig ist max_execution_time in der php.ini(seit PHP4) auf 30 Sekunden eingestellt. Kann man ändern, dann bricht der Interpreter erst später ab. mfg, André Laugks
php::bar PHP Wiki - Listenarchive