Datei einlesen und weiterverarbeiten
Hallo,
ich arbeite an einem php-script, bei dem eine Datei Zeile für Zeile eingelesen wird, bei Übereinstimmung eines Eintrags, soll ein anderer string aus dieser Zeile für eine weitere Berechnung ausgelesen werden.
Konkret wird aus einem anderen script (mit POST) eine Variable übertragen (input1 und input2 - die beiden werden auch korrekt übertragen). In der "datei.txt" befinden sich ca. 10000 Zeilen (mit jeweils 8 getrennten Werten pro Zeile).
Mein script sollte nun folgendes machen: die Variable $input1 (wurde eingegeben) soll mit den Einträgen verglichen werden und bei Übereinstimmung sollen zwei weitere Werte aus der Zeile für die weitere Verarbeitung im php-script bereitgestellt werde. (für $input2 dasselbe nochmal. Leider funktioniert es so nicht. Die Datei wird zwar korrekt eingelesen (und ich kann mir auch die Variablen z.B. von buffer[3] anzeigen lassen, aber der Vergleich funktioniert nicht, bekomme ich keine Variablen $x1, $y1,... (und den passenden Eintrag gibt es, also $input == $buffer[3] müsste er finden).
Wahrscheinlich ist es ein einfacher Anfängerfehler, aber ich finde keien Lösung dafür. Ich bin für jede Hilfe dankbar.
mfg
Georg
Hallo,
ich arbeite an einem php-script, bei dem eine Datei Zeile für Zeile eingelesen wird, bei Übereinstimmung eines Eintrags, soll ein anderer string aus dieser Zeile für eine weitere Berechnung ausgelesen werden.
Konkret wird aus einem anderen script (mit POST) eine Variable übertragen (input1 und input2 - die beiden werden auch korrekt übertragen). In der "datei.txt" befinden sich ca. 10000 Zeilen (mit jeweils 8 getrennten Werten pro Zeile).
Mein script sollte nun folgendes machen: die Variable $input1 (wurde eingegeben) soll mit den Einträgen verglichen werden und bei Übereinstimmung sollen zwei weitere Werte aus der Zeile für die weitere Verarbeitung im php-script bereitgestellt werde. (für $input2 dasselbe nochmal. Leider funktioniert es so nicht. Die Datei wird zwar korrekt eingelesen (und ich kann mir auch die Variablen z.B. von buffer[3] anzeigen lassen, aber der Vergleich funktioniert nicht, bekomme ich keine Variablen $x1, $y1,... (und den passenden Eintrag gibt es, also $input == $buffer[3] müsste er finden).
Wahrscheinlich ist es ein einfacher Anfängerfehler, aber ich finde keien Lösung dafür. Ich bin für jede Hilfe dankbar.
mfg
Georg
PHP:
//datei einlesen
$handle = fopen ("datei.txt", "rb");
// zeile für zeile einlesen
while (!feof ($handle)) {
$buffer = fgets($handle, 4096);
$buffer = explode("\t", $buffer);
$buffer[0];
$buffer[1];
$buffer[2];
$buffer[3];
$buffer[4];
$buffer[5];
$buffer[6];
$buffer[7];
if ($input1 == $buffer[3]) { $x1=$buffer[1] ;
$y1=$buffer[2] ; }
if ($input2 == $buffer[3]) { $x1=$buffer[1];
$y2=$buffer[2];}
}
Zuletzt bearbeitet: