O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

21.22 Eine Datei sperren

Problem

Sie wollen alleinigen Zugang zu einer Datei haben, um Änderungen durch Dritte zu verhindern, während Sie die Datei einlesen oder ändern. Wenn Sie zum Beispiel Informationen eines Gästebuchs in eine Datei speichern, sollten zwei Benutzer gleichzeitig die Möglichkeit haben, Gästebucheinträge durchzuführen, ohne sich gegenseitig in die Quere zu kommen.

Lösung

Verwenden Sie flock(), um eine unverbindliche Sperre anzuzeigen:

$fh = fopen('guestbook.txt','a')         or die($php_errormsg);
flock($fh,LOCK_EX)                       or die($php_errormsg);
fwrite($fh,$_REQUEST['guestbook_entry']) or die($php_errormsg);
fflush($fh)                              or die($php_errormsg);
flock($fh,LOCK_UN)                       or die($php_errormsg);
fclose($fh)                              or die($php_errormsg);

Diskussion

Die Art der von ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required