Optimierung für Datei schreiben und lesen....

deepgreen

Erfahrenes Mitglied
ich weiss, ich weiss eine datenbank ist besser, aber ab und zu braucht man text-dateien. :)

meine frage ist jetzt, welche befehle und funktionen bringen ein optimum an schreiben und lesen, dabei soll es recht sicher sein.

ich meine, im manuel finde ich alle befehle die ich brauche um was zu schreiben oder zu lesen, die frage ist eben welche befehle sind optimal wenn einige user gleichzeitig darauf zugreifen, vorallem wenn einer die datei liest und der andere eine datei abspeicher möchte.

sprich, ich brauche irgendwelche erfahrungsberichte oder gleich funktionen. :)
 
mal abgesehen davon, dass ich keine erfahrung mit txt-dateien hab, wüsste ich einfach mal gerne, wo diese herangehensweise nützlicher ist.
interessiert mich mal.
 
zb. für irgendwelche simplen counter, wo nur eine zahl hochgezählt wird, oder wieviele user auf der homepage sind.

für sowas eine datenbank zu benützen ist nach meiner meinung einfach schwachsinnig.
 
wenn einige user gleichzeitig darauf zugreifen

auf eine textdatei kann immer nur ein prozess zugreifen, vergleichbar mit einem user.

deshalb solltest du bei den fopen() bzw fputs() funktionen darauf aufpassen, dass du an der möglichst ersten stelle im script die datei über fclose() freigibst.
außer diesen funktionen bleibt dir keine andere möglichkeit.
 
"auf eine textdatei kann immer nur ein prozess zugreifen, vergleichbar mit einem user." <-- auf eine textdatei koennen beliebig viele prozesse zugreifen!!! das ist ja gerade das problem mit textdateien.

um das problem abzuhandeln schau dir mal flock an: http://www.php.net/flock

damit kannst du den "multiplen" zugriff auf eine textdatei sperren.
 
das weiss ich alles schon, mich interessiert mehr was in folgender richtung:

zb:
ist es besser mit $xyz=file("./xyz.txt"); oder mit fopen eine datei zu lesen?
 
das kann man so pauschal nicht sagen.
besser ist genau der befehl, den du fuer deinen awendungszweck brauchst.

mit fopen erhaelst du nur ein filehandle und kannst auslesen, schreiben u.s.w. file haut dir eine komplette datei in ein array.

die befehle kannst du ja garnicht vergleichen, machen ja komplett unterschiedliche sachen ;)
 
Zurück