Hello,
Das Arbeiten mit file_exists() und file() ist für ordentliche Arbeit so nutzlos wie ein Kropf.
Diese Befehle müssten dringend aus PHP entfernt werden oder aber ersetzt werden durch welche, die konkurrierenden Betrieb unterstützen.
Du möchtest ein File sperren während des Zugriffs?
Kenne ich noch aus uralten DOS- Tagen. Semaphore setzen und so. Wie macht PHP das denn?
PHP unterstützt out-of-the-box das advisory Filelocking, hält sich aber bei seinen eigenen namensbasierten File-Funktionen nicht daran.
Dabei wäre es ein leichtes, in der nächten Version einen zusätzlichen Parameter einzuführen
$_list = file($filename, $lock = LOCK_SH);
Wenn $lock nicht angesprochen wird, wird es in Zukunft automatisch auf LOCK_SH gesetzt, nur wenn man Lotteriespiel mag, kann man es dann auch auf LOCK_UN setzen oder wenn man paranoid ist auf LOCK_EX
Das sollte für alle namensbsierten File-Funktionen entsprechend umgesetzt werden.
Als ich das letute Mal in den Quellcode geschaut habe, war das noch nicht so...
Ein harzliches Glückauf
Tom vom Berg