SplFileObject flock()函数是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()函数:
程序1:
<?php
// Create Spl Object
$file = new SplFileObject("gfg.txt", "w");
// Add an Exclusive lock to gfg.txt
if ($file->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.
程序2:
<?php
// Create SplFile Object
$file = new SplFileObject("gfg.txt", "w");
// Add an Exclusive lock to gfg.txt
if ($file->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.net/manual/en/splfileobject.flock.php
相关用法
- PHP SplFileObject eof()用法及代码示例
- PHP SplFileObject rewind()用法及代码示例
- PHP SplFileObject seek()用法及代码示例
- PHP SplFileObject fputcsv()用法及代码示例
- PHP SplFileObject fgetc()用法及代码示例
- PHP SplFileObject getMaxLineLen()用法及代码示例
- PHP SplFileObject fwrite()用法及代码示例
- PHP SplFileObject ftruncate()用法及代码示例
- PHP SplFileObject ftell()用法及代码示例
- PHP SplFileObject fstat()用法及代码示例
- PHP SplFileObject fread()用法及代码示例
- PHP SplFileObject fgetss()用法及代码示例
- PHP SplFileObject setMaxLineLen()用法及代码示例
- PHP SplFileObject current( )用法及代码示例
- PHP SplFileObject fgets()用法及代码示例
注:本文由纯净天空筛选整理自R_Raj大神的英文原创作品 PHP | SplFileObject flock() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。