ฟังก์ชัน flock() ใช้ล็อก (lock) หรือปลดล็อก (release) ไฟล์ ฟังก์ชันคืนค่า TRUE เมื่อสำเร็จ และ FALSE เมื่อล้มเหลว
Syntax
flock(file_pointer, operation, block)
Parameters
file_pointer − ตัวชี้ไฟล์สำหรับไฟล์ที่เปิดอยู่ เพื่อล็อกหรือปลดล็อก
operation − ระบุประเภทล็อกที่ใช้:
- LOCK_SH - Shared lock (ผู้อ่าน)
- LOCK_EX - Exclusive lock (ผู้เขียน)
- LOCK_UN - ปลดล็อก shared หรือ exclusive lock
block − ตั้งค่าเป็น 1 หากต้องการให้ล็อกบล็อก (block)
Return
ฟังก์ชัน flock() คืนค่า:
- TRUE เมื่อสำเร็จ
- FALSE เมื่อล้มเหลว
ตัวอย่าง
<?php
$file_pointer = fopen("new.txt", "w+");
// shared lock
if (flock($file_pointer, LOCK_SH)) {
fwrite($file_pointer, "Some content");
flock($file_pointer, LOCK_UN);
} else {
echo "Locking of file shows an error!";
}
fclose($file_pointer);
?>
ผลลัพธ์
TRUE