Ich lerne PHP, & gerade bin ich fest. Ich lese eine .txt-Datei im Skript. Der Inhalt der Datei sind wie folgt aus:Unerwartetes Verhalten beim Analysieren von Textdatei
joe:secret
root:admin
ich die Datei mit der file()
Funktion leicht lesen kann, verwendet wird, die ein Array zurückgibt. I die Daten in einer eine Variable als:
$data = file('location/file.txt');
Next I foreach Schleife verwenden, und dann explodieren I jeder Zeile und speichert seinen Inhalt in einer Variablen wieder. Dann überprüfe ich die Variable, aber hier bekomme ich ein Verhalten, das ich nicht verstehe.
foreach ($data as $d) {
$row = explode(":", $d);
if ($row[0] == "joe" && $row[1] == "secret") {
echo "match found ";
}
}
Der obige Code gibt die erwartete Ausgabe. Warum das? Wenn ich dies tue,
echo $row[0]; echo $row[1];
dann bekomme ich korrekte Ausgabe. Also verstehe ich nicht warum mein Scheck fehlschlägt?
Haben Sie gesagt, dass beide korrekte Ausgabe geben? – kojow7
@ kojow7 Ja, ich habe verstanden, warum das passiert ist. Sie können die angenommene Antwort lesen :) –