php8.5
Home/ Manual/ dio / functions/ dio_open

dio_open

PHP function Edit on GitHub ✎

(PHP 4 >= 4.2.0, PHP 5 < 5.1.0)

Opens a file (creating it if necessary) at a lower level than the C library input/output stream functions allow

Description

dio_open(string $filename, int $flags, int $mode = 0): resource

dio_open() opens a file and returns a new file descriptor for it.

Parameters

filename

The pathname of the file to open.

flags

The flags parameter is a bitwise-ORed value comprising flags from the following list. This value must include one of O_RDONLY, O_WRONLY, or O_RDWR. Additionally, it may include any combination of the other flags from this list.

  • O_RDONLY - opens the file for read access.
  • O_WRONLY - opens the file for write access.
  • O_RDWR - opens the file for both reading and writing.
  • O_CREAT - creates the file, if it doesn't already exist.
  • O_EXCL - if both O_CREAT and O_EXCL are set and the file already exists, dio_open() will fail.
  • O_TRUNC - if the file exists and is opened for write access, the file will be truncated to zero length.
  • O_APPEND - write operations write data at the end of the file.
  • O_NONBLOCK - sets non blocking mode.
  • O_NOCTTY - prevent the OS from assigning the opened file as the process's controlling terminal when opening a TTY device file.
mode

If flags contains O_CREAT, mode will set the permissions of the file (creation permissions). mode is required for correct operation when O_CREAT is specified in flags and is ignored otherwise.

The actual permissions assigned to the created file will be affected by the process's umask setting as per usual.

Return Values

A file descriptor or false on error.

Examples

Opening a file descriptor

php
<?php

$fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK);

dio_close($fd);
?>

See Also

Source: reference/dio/functions/dio-open.xml · from the official PHP manual (php/doc-en)