Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Dateisystem via PHP
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite PHP-Skripte
Seite PHP Befehlsreferenz
Seite PHP5 Praxisbuch
Seite Gratis-Videolektionen*
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

Seite Anbieterverzeichnis

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!*  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!*

Vorname: 
Name:
E-Mail:
 



 

Verriegelung von Dateien




Jeder Schreibvorgang innerhalb einer Web-Anwendung birgt ein Risiko, nämlich dass Daten überschrieben werden. Sie können sich durch ein in PHP zur Verfügung gestelltes Verriegelungsverfahren davor schützen, so dass Inhalte einer Datei nicht ungewollt verändert werden können.

Eine Datei wird hierbei durch ein sog. Lock geschützt. Dieses von den meisten Betriebsystemen unterstützte Verfahren sperrt eine Datei, so dass ein ungewollter Zugriff ausgeschlossen werden kann. Die Funktion die Ihnen für die Verriegelung zur Verfügung steht ist flock().

Diese Funktion erwartet neben dem Datei-Handler, als zweites Argument einen Integerwert für die durchzuführende Verriegelungsoperation. Ihnen stehen folgende Verriegelungs-Konstanten zur Verfügung:


Konstante Wert Bedeutung
LOCK_SH 1 lock shared, verteilt lesende Verriegelung, andere Prozesse können lesend zugreifen.
LOCK_EX 2 lock exclusive, keinem anderen Prozess den Zugriff ermöglichen.
LOCK_UN 3 lock unlock, Verriegelung aufheben, sowohl lesend als auch schreibend.
LOCK_NB 4 lock non-blocking, in Verbindung mit LOCK_EX und LOCK_UN, beendet den Zugriffsversuch, ohne zu warten, bis die Datei für Zugriffe frei ist.


Um eine Datei zu sperren, benötigt die Funktion einen Datei-Handler, den Sie mit Hilfe der Funktion fopen() erhalten. Als Operation können Sie entweder einen verteilten oder einen exklusiven Zugriff erlauben oder eine Verriegelung wieder aufheben. Die Option LOCK_NB legt fest, wie reagiert werden soll, wenn eine Datei gesperrt vorgefunden wird. Um diesen anzugeben, notieren Sie nach der Operation einen Senkrechten Strich und danach die Konstante. Sie sollte diese nur dann einsetzen, wenn Sie Zugriffe während der Verriegelung durch flock() zulassen wollen.

Der Einsatz einer Verriegelung macht jedoch nur dann Sinn, wenn alle Programme die gleiche Art und Weise der Verriegelung nutzen. Eine Verriegelung von Dateien wird im übrigen lediglich empfohlen. Solange Sie kein flock() verwenden, um den Verriegelungstatus einer Datei festzulegen, können Sie auf diese bequem lese/schreib-Zugriffe ausführen.


 


Serialisierung von Daten
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de