310 of 410 menu

ฟังก์ชัน flock

ฟังก์ชัน flock ตั้งค่าหรือปลดล็อกไฟล์ พารามิเตอร์แรกมันรับตัวชี้ไฟล์ที่ได้จาก fopen พารามิเตอร์ที่สอง - ประเภทของการล็อก (LOCK_SH, LOCK_EX หรือ LOCK_UN) และพารามิเตอร์ที่สามซึ่งเป็นตัวเลือก - แฟล็กสำหรับการดำเนินการแบบไม่บล็อก

ไวยากรณ์

flock(resource $handle, int $operation, int &$would_block = null): bool

ตัวอย่าง

การล็อกไฟล์สำหรับการเข้าถึงแบบพิเศษ (การเขียน):

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX)) { ftruncate($file, 0); fwrite($file, "ข้อมูลใหม่"); flock($file, LOCK_UN); } fclose($file); ?>

ตัวอย่าง

การล็อกแบบใช้ร่วมกันสำหรับการอ่าน:

<?php $file = fopen("data.txt", "r"); if (flock($file, LOCK_SH)) { $content = fread($file, filesize("data.txt")); flock($file, LOCK_UN); } fclose($file); echo $content; ?>

ตัวอย่าง

ความพยายามจับล็อกแบบไม่บล็อก:

<?php $file = fopen("data.txt", "c+"); if (flock($file, LOCK_EX | LOCK_NB, $would_block)) { if ($would_block) { echo "ไฟล์ถูกล็อกโดยกระบวนการอื่น"; } else { fwrite($file, "ข้อมูล"); flock($file, LOCK_UN); } } fclose($file); ?>

ดูเพิ่มเติม

  • ฟังก์ชัน fopen,
    ซึ่งเปิดไฟล์
  • ฟังก์ชัน fclose,
    ซึ่งปิดไฟล์
  • ฟังก์ชัน is_writable,
    ซึ่งตรวจสอบความเป็นไปได้ในการเขียน
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ