Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Programmierung mit PHP  Teil von  Dateisystem via PHP
Professional CronJob-Service

Suche

International PHP Conference


WebTech Conference


:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 
PHP Summit


Software Architecture Summit


:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
HTML5 Days


JavaScript Days


:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Verriegelung von Dateien

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen



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

Eine Datei wird hierbei durch einen Lock geschützt. Dieses von den meisten Betriebssystemen unterstützte Verfahren sperrt eine Datei, sodass ein ungewollter Zugriff ausgeschlossen werden kann. Die Funktion für die Verriegelung 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:

KonstanteWertBedeutung
LOCK_SH1lock shared, verteilt lesende Verriegelung, andere Prozesse können lesend zugreifen.
LOCK_EX2lock exclusive, keinem anderen Prozess den Zugriff ermöglichen.
LOCK_UN3lock unlock, Verriegelung aufheben, sowohl lesend als auch schreibend.
LOCK_NB4lock 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 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 dies anzugeben, notieren Sie nach der Operation einen senkrechten Strich und danach die Konstante. Sie sollten 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 Verriegelungsstatus einer Datei festzulegen, können Sie auf diese bequem Lese-/Schreibzugriffe ausführen.



Serialisierung von Daten
 




:: Premium-Partner ::

Webhosting/Serverlösungen

LeaseWeb Germany GmbH weitere Premium-Partner
 

:: SELFPHP Sponsor ::

ionCube Ltd. weitere Sponsoren
 

:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 
 

Ausgewählter Tipp im Bereich PHP-Skripte


Alle Bilder eines Verzeichnisses auflisten

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Alle Dateien mit bestimmter Dateierweiterung auflisten (PHP 5)

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2014 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt
© 2005-2014 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de