Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

eio_open(3) [php man page]

EIO_OPEN(3)								 1							       EIO_OPEN(3)

eio_open - Opens a file

SYNOPSIS
resource eio_open (string $path, int $flags, int $mode, int $pri, callable $callback, [mixed $data = NULL]) DESCRIPTION
eio_open(3) opens file specified by $path in access mode $mode with PARAMETERS
o $path - Path of the file to be opened. Warning In some SAPIs(e.g. PHP-FPM) it could fail, if you don't specify full path. o $flags -One of EIO_O_* constants, or their combinations. EIO_O_* constants have the same meaning, as their corresponding O_* counter- parts defined in fnctl.h C header file. Default is EIO_O_RDWR. o $mode -One of EIO_S_I* constants, or their combination (via bitwise OR operator). The constants have the same meaning as their S_I* counterparts defined in sys/stat.h C header file. Required, if a file is created. Otherwise ignored. o $pri -The request priority: EIO_PRI_DEFAULT, EIO_PRI_MIN, EIO_PRI_MAX, or NULL. If NULL passed, $pri internally is set to EIO_PRI_DEFAULT. o $callback -$callback function is called when the request is done. It should match the following prototype: void callback(mixed $data, int $result[, resource $req]); o $data -is custom data passed to the request. o $result -request-specific result value; basically, the value returned by corresponding system call. o $req -is optional request resource which can be used with functions like eio_get_last_error(3) o $data - Arbitrary variable passed to $callback. RETURN VALUES
eio_open(3) returns file descriptor in $result argument of $callback on success; otherwise, $result is equal to -1. EXAMPLES
Example #1 eio_open(3) example <?php $temp_filename = "eio-temp-file.tmp"; /* Is called when eio_close() finishes */ function my_close_cb($data, $result) { // Zero indicates success var_dump($result == 0); @unlink($data); } /* Is called when eio_open() finishes */ function my_file_opened_callback($data, $result) { // $result should contain the file descriptor var_dump($result > 0); if ($result > 0) { // Close the file eio_close($result, EIO_PRI_DEFAULT, "my_close_cb", $data); eio_event_loop(); } } // Create new file for reading and writing // Deny group and others to do anything with that file eio_open($temp_filename, EIO_O_CREAT | EIO_O_RDWR, EIO_S_IRUSR | EIO_S_IWUSR, EIO_PRI_DEFAULT, "my_file_opened_callback", $temp_filename); eio_event_loop(); ?> The above example will output something similar to: bool(true) bool(true) SEE ALSO eio_mknod. PHP Documentation Group EIO_OPEN(3)

Check Out this Related Man Page

EIO_READ(3)								 1							       EIO_READ(3)

eio_read - Read from a file descriptor at given offset.

SYNOPSIS
resource eio_read (mixed $fd, int $length, int $offset, int $pri, callable $callback, [mixed $data = NULL]) DESCRIPTION
eio_read(3) reads up to $length bytes from $fd file descriptor at $offset. The read bytes are stored in $result argument of $callback. PARAMETERS
o $fd - Stream, Socket resource, or numeric file descriptor o $length - Maximum number of bytes to read. o $offset - Offset within the file. o $pri -The request priority: EIO_PRI_DEFAULT, EIO_PRI_MIN, EIO_PRI_MAX, or NULL. If NULL passed, $pri internally is set to EIO_PRI_DEFAULT. o $callback -$callback function is called when the request is done. It should match the following prototype: void callback(mixed $data, int $result[, resource $req]); o $data -is custom data passed to the request. o $result -request-specific result value; basically, the value returned by corresponding system call. o $req -is optional request resource which can be used with functions like eio_get_last_error(3) o $data - Arbitrary variable passed to $callback. RETURN VALUES
eio_read(3) stores read bytes in $result argument of $callback function. EXAMPLES
Example #1 eio_read(3) example <?php // Open a temporary file and write some bytes there $temp_filename = "eio-temp-file.tmp"; $fp = fopen($temp_filename, "w"); fwrite($fp, "1234567890"); fclose($fp); /* Is called when eio_read() is done */ function my_read_cb($data, $result) { global $temp_filename; // Output read bytes var_dump($result); // Close file eio_close($data); eio_event_loop(); // Remove temporary file @unlink($temp_filename); } /* Is called when eio_open() is done */ function my_file_opened_callback($data, $result) { // $result should contain the file descriptor if ($result > 0) { // Read 5 bytes starting from third eio_read($result, 5, 2, EIO_PRI_DEFAULT, "my_read_cb", $result); eio_event_loop(); } else { // eio_open() failed unlink($data); } } // Open the file for reading and writing eio_open($temp_filename, EIO_O_RDWR, NULL, EIO_PRI_DEFAULT, "my_file_opened_callback", $temp_filename); eio_event_loop(); ?> The above example will output something similar to: string(5) "34567" SEE ALSO eio_open, eio_write, eio_close, eio_event_loop. PHP Documentation Group EIO_READ(3)
Man Page