Tom: fünf zeilen in datei überschreiben

Beitrag lesen

Hello,

schön, dass Du an das Sperren denkst.
Es muss aber der geamte Änderungsvorgang gekapselt werden.

$file=fopen('datei.php');

flock($file,LOCK_EX);

wenn Lock erfolgreich

Daten auslesen

Daten ändern

Satzzeiger neu positionieren

Daten zurückschreiben

Datei schließen und damit gleichzeitig entsprerren

Bei Textdateien ist es schwierig, am Anfang oder in der Mitte der Datei genau eine "Zeile" auszutauschen, da die Länge der Daten genau eingehalten werden muss.

Dazu muss man dann i.d.R. die geamte Textdatei umkopieren, was natürlich unwirtschaftlich ist.
Entweder, man organisiert seine Dateien gleich als "Random Access", also Dateien mit mindestens gleicher Satzlänge, oder man benötigt ein spezielles Zugriffssystem (BTREE oder ähnlich) für den effektiven Zugriff.

Harzliche Grüße vom Berg
http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau