Hallo,
irgendwie habe ich den Dateizugriff mit php noch nicht ganz verstanden. Auslesen kriege ich gebacken, aber ich möchte in eine bestimmte Zeile einen Wert eintragen. Beispieldatei:
Hunde; 234
Katzen; 457
Elefanten; 345
Jetzt hat sich der Wert Elefanten verändert und den möchte ich überschreiben. Wie mache ich das? Ich habe es so versucht:
$fp = fopen("data.txt","r+");
while ($line = fgets($fp,1000)) {
if (ereg("Elefanten;",$line)) {
fputs ($fp, "Elefanten; ".$Elefanten_Anzahl);
}
}
fclose($fp);
Leider geht das halt nicht. Wo ist mein Denkfehler?
Gruß
computerschlumpf
PS: Keine Sorge ich möchte keine Tierhandlung aufmachen ;-)
Homepage selbermachen 7.851 Themen, 35.616 Beiträge
Zeilenweise in ein Array speichern geht noch leichter:
$fp = fopen("datei","modus");
$data = file("datei");
fclose($fp);
Der Weg über ereg ist schon gut oder auch strstr. Ändere einfach die Werte in dem Array und am Schluß schreibst Du die Werte in die Textdatei. Ein implode("\n",$data); macht daraus wieder eine Zeichenkette getrennt mit Zeilenumbruch.
Gruß Dumistvieh