| Manuál PHP | ||
|---|---|---|
| Předcházející | Další | |
PHP podporuje "portable" způsob zamykání celých souborů na základě jednotného "advisory" principu (tzn. všechny přistupující programy musí používat tentýž systém zamykání, jinak to nebude fungovat).
flock() funguje na deskriptoru
fp, který musí patřit otevřenému souboru.
operation je jedna z následujících hodnot:
K získání sdíleného (shared) zámku (čtení) nastavte
operation na LOCK_SH (resp. 1 u verzí do
PHP 4.0.1).
K získání výhradního zámku (zápis) nastavte
operation na LOCK_EX (resp. 2 u verzí do
PHP 4.0.1).
K uvolnění zámku (sdíleného nebo výhradního) nastavte
operation na LOCK_UN (resp. 3 u verzí do
PHP 4.0.1).
Pokud nechcete, aby funkce flock() blokovala
během zamykání, přidejte k operation
hodnotu LOCK_NB (4 pro verze do PHP 4.0.1).
flock() umožnuje jednoduchý model čtení/zápis použitelný teoreticky na všech platformách (včetně většiny Unixů a nejspíš i Windows). Nepovinný třetí argument se nastaví na TRUE, pokud by zámek měl blokovat (EWOULDBLOCK errno podmínka).
flock() vrací TRUE při úspěchu, FALSE při chybě (např. když nelze vytvořit zámek).
| Varování |
Na většině operačních systémů je funkce flock() implementována na úrovni procesů. Při použití multithreadového serverového API (jako je ISAPI) nemůžete spoléhat na ochranu souborů proti jiným PHP skriptům běžícím v paralelních vláknech stejné instance serveru! |
| Předcházející | Domů | Další |
| filetype | Nahoru | fnmatch |