实际上,上面的文档中有一个小错误。l_start 相对于哪个位置的参数实际上是“whence”,而不是文档中所说的“wenth”。
(PHP 4 >= 4.2.0, PHP 5 < 5.1.0)
dio_fcntl — 在 fd 上执行 c 库 fcntl
dio_fcntl() 函数对文件描述符 fd
执行由 cmd
指定的操作。某些命令需要提供额外的参数 args
。
fd
由 dio_open() 返回的文件描述符。
cmd
可以是以下操作之一
args
当 cmd
为 F_SETLK
或 F_SETLLW
时,args
是一个关联数组,具有以下键
返回 C 调用的结果。
示例 #1 设置和清除锁
<?php
$fd = dio_open('/dev/ttyS0', O_RDWR);
if (dio_fcntl($fd, F_SETLK, Array("type"=>F_WRLCK)) == -1) {
// 文件描述符似乎被锁定
echo "锁无法清除。它被其他人持有。";
} else {
echo "锁已成功设置/清除";
}
dio_close($fd);
?>
注意: 此函数在 Windows 平台上未实现。