Grüße,
was weiß denn ich, was in deinem $keys steht :=) und wie du es erstellst.
was weiß ich, wo und wie Du die neuen Daten in $array tust. Vielleicht mit $array[] = "Neue Datenzeile"; ?!? Vielleicht mit $array[$nr] = "Neue Datenzeile"; ?!?
if (in_array($nr, $keys)){
fwrite($fp,"...;\r\n");
} else {
fwrite($fp,$zeile."\r\n");
}
Es werden (bei if==true) die neue und die alte Zeile in die Datei geschrieben.
beide Bedingungen der if-Bed. können nicht wahr sein :)
Vielleicht meinst Du ja einfach array_key_exists() stat in_array(). Ersteres sucht nach Schlüsseln, letzeres nach Werten.
Solch ein Problem kannst Du meist sehr einfach lösen, indem Du einfach mal die Variablen mit var_dump(); ausgibst:
var_dump($array);
var_dump($keys);
und in der Schleife
var_dump($nr);
Bis später,
Baba