PHP flock() Function











❮ مرجع فایل سیستم PHP

مثال


فایل را قفل و آزاد کنید:




$file = fopen("test.txt"،"w+");



// قفل انحصاری

if (flock($file,LOCK_EX)) {

fwrite($file,"متنی به فایل اضافه کنید.");

flush($file);

// قفل را آزاد کنید

flock($file,LOCK_UN);

}
دیگری {

echo "خطا در قفل کردن فایل!"؛



fclose($file);

?>







تعریف و استفاده


عملکرد flock() یک فایل را قفل و آزاد می کند.



نحو



flock(پرونده، قفل، block)

مقادیر پارامتر









مشخص می کند









پارامتر توضیح
پرونده لازم است. یک فایل باز را برای قفل کردن یا آزاد کردن
قفل لازم است. نوع قفل را مشخص می کند.

مقادیر احتمالی:



  • LOCK_SH - یک قفل مشترک (خواننده). به سایر فرآیندها اجازه دسترسی به فایل را بدهید

  • LOCK_EX - یک قفل انحصاری (نویسنده). از دسترسی سایر فرآیندها به فایل جلوگیری کنید

  • LOCK_UN - قفل را رها کنید

  • LOCK_NB - از مسدود کردن سایر فرآیندها در حین قفل کردن اجتناب کنید


مسدود کردن اختیاری. برای مسدود کردن سایر فرآیندها در حین قفل کردن، روی 1 تنظیم کنید













جزئیات فنی















مقدار بازگشتی: در مورد موفقیت درست است، در مورد شکست نادرست
نسخه PHP: 4.0+
تغییر PHP: PHP 5.5: اضافه شدن پشتیبانی برای پارامتر block در Windows
PHP
5.3: باز کردن قفل خودکار در fclose() حذف شد. اکنون باز کردن قفل باید انجام شود
به صورت دستی



❮ مرجع فایل سیستم PHP