Thomas Schmieder: Problem bei Zeilen hinzufügen in einer Datei

Beitrag lesen

Hi,
also ich will in eine Datei eine neue Zeile (am Anfang/also ganz oben) hinzufügen. Das geht allerdings nicht so gut... irgendwie habe ich Probleme mit den zeilenumbrüchen. Also wie geht denn das am einfachsten?

Hallo 3gx,

das Problem ist eigentlich ein tiefgründig philosophisches, also dunkelste Hardware, so gerade über dem Motherboard.

Es gibt Betriebssysteme, die sogenannte Spooldateien kennen. Die kann man von vorne her schon wieder freigeben (an das Filesystem zurückgeben) während man sie in der Mitte z.B. an den Drucker leitet und hintendran noch Daten anfügt. Alles (vermeintlich) gleichzeitig.

Linux z. B. kann mit "tale" die letzten zehn Zeilen einer Datei ausgeben (die 10 ist Voreinstellung und kann in gewissen Grenzen konfiguriert werden). Mit Cat (ich hoffe das das jetzt stimmt) kann man eine Datei auch rückwärts ausgeben. Also die letze Zeile zuerst.

Wenn Du dir das nutzbar machst, hättest Du ja was Du wolltest. Du fügst zwar immer hinten an, gibst dann aber rückwärts aus und hast so die neueste Zeile immer oben.

Mit "normalen" Filebefehlen bleibt Dir nur die Möglichkeit, eine neue Datei anzulegen, die neue Zeile hineinzuschreiben, die alte Datei hinten dranzukopieren. Das geht mit PHP ganz einfach über eine Variable, in die Du die ganze Datei einliest und dann an die neue Datei im a+ Mode wieder ausgibst.

Nur etwas unhandlich, wenn die Datei zu groß wird.

Grüße

Tom