A hordozható tanácsadó fájlzárolás
bool állományban (resource $ handle. int $ működés [, int $ Wouldblock])
állomány () lehetővé teszi az egyszerű olvasó / író modell, amely felhasználható szinte minden platformon (beleértve a legtöbb a Unix és még Windows).
A PHP verziók előtt 5.3.2 Lock is megszabadítjuk hívja fclose () függvény (más néven végén automatikusan a script).
A PHP támogatja a hordozható módon zár tanácsadó (tanácsadó zár) teljesen a teljes fájlt (ami azt jelenti, hogy minden programot, amely az iratbetekintés kell használni ugyanazt a blokkolási eljárás, különben a zár nem fog működni). Alapértelmezésben ez a funkció megvárja a zár; Ez a viselkedés lehet változtatni a paraméter LOCK_NB alábbiakban ismertetjük.
paraméter lista
Pointer (forrás) a fájlt, jellemzően segítségével létrehozott fopen ().
művelet a következő értékeket:- LOCK_SH megosztott zár (olvasni).
- LOCK_EX megszerzésének kizárólagos zár (write).
- LOCK_UN hogy kiengedje a zárat (megosztott vagy kizárólagos).
Az is lehetséges, hogy adjunk LOCK_NB állandó, mint a bitmaszkként bármelyik fenti műveleteket, ha nem akarja megvárni a nyájat (), hogy a zár.
Az opcionális harmadik paraméter 1-be, ha a zár reteszelő (EWOULDBLOCK hibakód).
visszatérési értékei
TRUE értékkel tér vissza siker hiba esetén FALSE.
jegyzetek
A Windows állományban () használ kötelező (kötelező) helyett tanácsadó zár. Kötelező zár is támogatja, és Linux operációs rendszerek alapján a System V egy szabványos mechanizmus, amely rendszer hívás fcntl (): azaz, a kívánt fájlt kell telepíteni setgid bit-hozzáféréssel és meghatározhatatlan bit csoport teljesítményét. A helyes működését a program a Linux, a fájlrendszer is fel kell szerelni mand.
Tekintettel arra, hogy a nyájat () függvény esetében a mutató egy fájlt, akkor kell használni egy speciális rögzítő fájl korlátozza a hozzáférést a fájlt, amelyet meg kíván tisztítani, nyissa meg azt írási üzemmódban (a „w” vagy „w + „, mint a fopen () függvény argumentum).
Ezt fel lehet használni, csak helyi fájlleírókkal által visszaadott fopen () függvény. vagy fájlleírók felhasználó áramlások végrehajtási streamWrapper :: stream_lock () metódust.
Hozzárendelése másik az argumentum értéke fogantyú a következő kódot törli a meglévő zár.
Egyes operációs rendszerek állományt () végrehajtása a folyamatok szintjén. Amikor egy többszálas kiszolgáló API, mint például egy ISAPI, akkor nem hivatkozhat állományban (), hogy megvédje a fájlok és a többi PHP szkriptek futnak párhuzamosan a patak ugyanazon a szerveren!
állomány () nem támogatott a régebbi fájlrendszerek mint FAT és származékai, így mindig vissza HAMIS ebben a közegben (ez különösen igaz a Windows 98 felhasználóknak).