Direct IO Functions


PHP supports the direct io functions as described in the Posix Standard (Section 6) for performing I/O functions at a lower level than the C-Language stream I/O functions (fopen(), fread(),..). The use of the DIO functions should be considered only when direct control of a device is needed. In all other cases, the standard filesystem functions are more than adequate.


本扩展已被移动到 » PECL 库中且自以下版本起不再被绑定到 PHP 中:5.1.0.

This extension is only available on Windows Platforms as of PHP 5.0.0




To get these functions to work, you have to configure PHP with --enable-dio.


以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 PHP 中,或者在运行时被动态加载后才有效。

c (integer)
F_DUPFD (integer)
F_GETFD (integer)
F_GETFL (integer)
F_GETLK (integer)
F_GETOWN (integer)
F_RDLCK (integer)
F_SETFL (integer)
F_SETLK (integer)
F_SETLKW (integer)
F_SETOWN (integer)
F_UNLCK (integer)
F_WRLCK (integer)
O_APPEND (integer)
O_ASYNC (integer)
O_CREAT (integer)
O_EXCL (integer)
O_NDELAY (integer)
O_NOCTTY (integer)
O_NONBLOCK (integer)
O_RDONLY (integer)
O_RDWR (integer)
O_SYNC (integer)
O_TRUNC (integer)
O_WRONLY (integer)
S_IRGRP (integer)
S_IROTH (integer)
S_IRUSR (integer)
S_IRWXG (integer)
S_IRWXO (integer)
S_IRWXU (integer)
S_IWGRP (integer)
S_IWOTH (integer)
S_IWUSR (integer)
S_IXGRP (integer)
S_IXOTH (integer)
S_IXUSR (integer)


本扩展模块在 php.ini 中未定义任何配置选项。


One resource type is defined by this extension: a file descriptor returned by dio_open().


dio_close - Closes the file descriptor given by fd
dio_fcntl - Performs a c library fcntl on fd
dio_open - Opens a new filename with specified permissions of flags and creation permissions of mode
dio_read - Reads bytes from a file descriptor
dio_seek - Seeks to pos on fd from whence
dio_stat - Gets stat information about the file descriptor fd
dio_tcsetattr - Sets terminal attributes and baud rate for a serial port
dio_truncate - Truncates file descriptor fd to offset bytes
dio_write - Writes data to fd with optional truncation at length