📜  PHP | SplFileObjectflock()函数

📅  最后修改于: 2022-05-13 01:56:41.390000             🧑  作者: Mango

PHP | SplFileObjectflock()函数

SplFileObjectflock()函数是PHP中标准PHP库 (SPL) 的内置函数,用于对文件应用可移植锁定。

句法:

bool SplFileObject::flock( $opr, $isBlock )

参数:此函数接受上面提到的两个参数,如下所述:
$opr:用于从以下列表中指定要应用的操作:

  • LOCK_SH:获取共享锁(读卡器)。
  • LOCK_EX:获取排他锁(写入器)。
  • LOCK_UN:释放锁。
  • LOCK_NB:锁定时不阻塞。

$isBlock:如果锁是块,则此参数设置为 True。

返回值:此函数在成功时返回 True,在失败时返回 False。

注意:确保下面程序中使用的文件名为 gfg.txt 并且应该具有读写权限。

下面的程序说明了PHP中的 SplFileObject::flock()函数:

方案一:

flock(LOCK_SH)) { 
    $file->ftruncate(0);
    $file->fwrite("Write GFG inside the gfg.txt");
      
    // Release the lock  
    $file->flock(LOCK_UN);
    echo "Success Lock and Unlock Operation";
} 
else {
    echo "No Lock Available";
}
?>

输出:

Success Lock and Unlock Operation.

方案二:

flock(LOCK_EX)) { 
    $file->ftruncate(0);
    $file->fwrite("Write GFG inside the gfg.txt");
      
    // Release the lock  
    $file->flock(LOCK_UN);
    echo "Success Exclusive Lock and Unlock Operation";
} else {
    echo "No Lock Available";
}
?>

输出:

Success Exclusive Lock and Unlock Operation

参考: http: PHP。 PHP