تابع ()flock
تابع ()flock
تعریف و کاربرد
تابع ()flock یک فایل را قفل کرده و یا آزاد می کند.
این تابع در صورت موفقیت TRUE و در صورت شکست FALSE را برمی گرداند.
نحوه نوشتن
flock(file,lock,block)
پارامترها | توضیحات |
---|---|
file |
ضروری. یک فایل باز شده را مشخص می کند که قرار است قفل شود یا آزاد گذاشته شود. |
lock |
ضروری. مشخص می کند که از چه نوع قفلی استفاده شود. مقادیر امکان پذیر:
|
block |
اختیاری. برای مسدود کردن دیگر پروسه ها به هنگام قفل کردن آن را به 1 ست کنید. |
نکات قابل توجه
نکته: این قفل ها تنها به پروسه ی php جاری اعمال می شوند. دیگر پروسه ها می توانند در صورتی که مجوزها اجازه دهند، یک فایل php قفل شده را تغییر داده یا حذف نمایند.
نکته: قفل مورد نظر همچنین به وسیله ی ()fclose نیز آزاد می شود. این دستور به هنگامی که اسکریپت پایان یابد به طور اتوماتیک فراخوانی می شود.
مثال
<?php
$file = fopen("test.txt","w+");
// exclusive lock
if (flock($file,LOCK_EX))
{
fwrite($file,"Write something");
// release lock
flock($file,LOCK_UN);
}
else
{
echo "Error locking file!";
}
fclose($file);
?>
$file = fopen("test.txt","w+");
// exclusive lock
if (flock($file,LOCK_EX))
{
fwrite($file,"Write something");
// release lock
flock($file,LOCK_UN);
}
else
{
echo "Error locking file!";
}
fclose($file);
?>
- نوشته شده توسط احسان عباسی
- بازدید: 3730