Datei blockieren

Datei blockieren

am 19.09.2006 20:17:55 von Micha Kuehn

Hallo ihr,

meine Seiten arbeiten mit Einträgen in einer Art Datenbank, die aber mit
filebasiert sind, also ohne echtes DB-System dahinter (dies wäre
Overkill in meinem Fall).

Nun ist es zwar sehr unwahrscheinlich, aber rein theoretisch wäre es
möglich, dass zwei Leute gleichzeitig ein und dieselbe Datei schreiben
wollen. Dann wird es vermutlich Chaos geben, denke ich.

Wie blockiere ich den schreibenden Zugriff auf eine Datei und wie gebe
ich ihn wieder frei?

Danke schon mal (wieder),
Micha
--
Persönliche Mails: Bitte nur als reply - und als Wurmkur werden alle
Mails > 100 KB automatisch und unbesehen gelöscht!

Re: Datei blockieren

am 19.09.2006 20:33:50 von Claus Reibenstein

Micha Kuehn schrieb:

> Wie blockiere ich den schreibenden Zugriff auf eine Datei und wie gebe
> ich ihn wieder frei?

Mit flock().

Gruß. Claus

Re: Datei blockieren

am 19.09.2006 20:42:15 von Micha Kuehn

Claus Reibenstein schrieb:
> Mit flock().

Danke!

Das finde ich echt nervig bei PHP: Die Namen der Funktionen werden
uneinheitlich vergeben. Ich hatte alles mögliche mit file* und file_*
durchsucht... An f* hatte ich nicht gedacht.
Auch bei den String-Funktionen gibt es str* und str_* und *str, auch da
suche ich ständig...

Na ja, zum Auffinden von Funktionsnamen gibt's ja die NG... ;-)

Danke nochmal,
Micha
--
Persönliche Mails: Bitte nur als reply - und als Wurmkur werden alle
Mails > 100 KB automatisch und unbesehen gelöscht!

Re: Datei blockieren

am 19.09.2006 23:09:59 von Matthias Esken

On Tue, 19 Sep 2006 20:42:15 +0200, Micha Kuehn wrote:

> Das finde ich echt nervig bei PHP: Die Namen der Funktionen werden
> uneinheitlich vergeben.

Kompatibilitätsaltlasten und keine Namespaces tun in der Tat weh.

> Na ja, zum Auffinden von Funktionsnamen gibt's ja die NG... ;-)

Nein, den Kopf. Wenn man einfach mal in der Dokumentation nach den
Funktionen des Dateisystems sucht, dann findet man flock() da recht schnell
(http://www.php.net/manual/en/ref.filesystem.php).

Gruß,
Matthias

Re: Datei blockieren

am 29.09.2006 21:51:23 von jbusenet

Micha Kuehn wrote:

> Na ja, zum Auffinden von Funktionsnamen gibt's ja die NG... ;-)

flock heisst es sicher in einem halben Dutzend anderer (Script)sprachen
auch. Also ligt das nicht so fern. Aber wenn man es nicht weiss hilft
s.o. der Kopf oder eine Suchmachine, eine Referenz oder auch mal ein
Blick in ein fertiges Script/snippet.

Was ist eigentlich Overkill an einer DB? Geht doch viel schneller als
eine Datei zu oeffnen, sich auch noch gedanken ums auslesen zu machen
und das ganze zu schliessen. Von eine Schutz vor gleichzeitigem Schutz
mal ganz abgesehen gibt es sicherlich noch ein paar Gruende ... *g*

cheers

Julian


--
Julian Bessenroth ( http://www.vnox.de )
Email : jbusenet (Ligatur von "a" und "d") gmx.de
Reply-Emails : mit "[NG]" oder "[NOSPAM]" im Betreff,
sonst gehen sie unter.