php man page for dio_fcntl

Query: dio_fcntl

OS: php

Section: 3

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

DIO_FCNTL(3)								 1							      DIO_FCNTL(3)

dio_fcntl - Performs a c library fcntl on fd

SYNOPSIS
mixed dio_fcntl (resource $fd, int $cmd, [mixed $args])
DESCRIPTION
The dio_fcntl(3) function performs the operation specified by $cmd on the file descriptor $fd. Some commands require additional arguments $args to be supplied.
PARAMETERS
o $fd - The file descriptor returned by dio_open(3). o $cmd - Can be one of the following operations: o F_SETLK - Lock is set or cleared. If the lock is held by someone else dio_fcntl(3) returns -1. o F_SETLKW - like F_SETLK, but in case the lock is held by someone else, dio_fcntl(3) waits until the lock is released. o F_GETLK - dio_fcntl(3) returns an associative array (as described above) if someone else prevents lock. If there is no obstruction key "type" will set to F_UNLCK. o F_DUPFD - finds the lowest numbered available file descriptor greater than or equal to $args and returns them. o F_SETFL - Sets the file descriptors flags to the value specified by $args, which can be O_APPEND, O_NONBLOCK or O_ASYNC. To use O_ASYNC you will need to use the PCNTL extension. o $args -$args is an associative array, when $cmd is F_SETLK or F_SETLLW, with the following keys: o start - offset where lock begins o length - size of locked area. zero means to end of file o whence - Where l_start is relative to: can be SEEK_SET, SEEK_END and SEEK_CUR o type - type of lock: can be F_RDLCK (read lock), F_WRLCK (write lock) or F_UNLCK (unlock)
RETURN VALUES
Returns the result of the C call.
EXAMPLES
Example #1 Setting and clearing a lock <?php $fd = dio_open('/dev/ttyS0', O_RDWR); if (dio_fcntl($fd, F_SETLK, Array("type"=>F_WRLCK)) == -1) { // the file descriptor appears locked echo "The lock can not be cleared. It is held by someone else."; } else { echo "Lock successfully set/cleared"; } dio_close($fd); ?>
NOTES
Note This function is not implemented on Windows platforms. PHP Documentation Group DIO_FCNTL(3)
Related Man Pages
fcntl(2) - sunos
fcntl(3) - linux
fcntl(2) - osx
fcntl(2) - opendarwin
fcntl(2) - netbsd
Similar Topics in the Unix Linux Community
UNIX.COM 2017 Year End Summary
New Code Tags (Syntax Highlighting)
Please Welcome Don Cragun as Lead Moderator
Please Welcome Ravinder Singh to the Moderation Team
Please Welcome Nicki Paul to the Moderator Team!