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_MKNOD(3)								 1							      EIO_MKNOD(3)

eio_mknod - Create a special or ordinary file.

SYNOPSIS
resource eio_mknod (string $path, int $mode, int $dev, [int $pri = EIO_PRI_DEFAULT], [callable $callback = NULL], [mixed $data = NULL]) DESCRIPTION
eio_mknod(3) creates ordinary or special(often) file. Warning This function is currently not documented; only its argument list is available. PARAMETERS
o $path - Path for the new node(file). o $mode - Specifies both the permissions to use and the type of node to be created. It should be a combination (using bitwise OR) of one of the file types listed below and the permissions for the new node(e.g. 0640). Possible file types are: EIO_S_IFREG(regular file), EIO_S_IFCHR(character file), EIO_S_IFBLK(block special file), EIO_S_IFIFO(FIFO - named pipe) and EIO_S_IFSOCK(UNIX domain socket). To specify permissions EIO_S_I* constants could be used. o $dev - If the file type is EIO_S_IFCHR or EIO_S_IFBLK then dev specifies the major and minor numbers of the newly created device spe- cial file. Otherwise $dev ignored. See mknod(2) man page for details. 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_mknod(3) returns request resource on success or FALSE on error. EXAMPLES
Example #1 eio_mknod(3) example <?php // FIFO name $temp_filename = "/tmp/eio-temp-fifo"; /* Is called when eio_mknod() finishes */ function my_mknod_callback($data, $result) { $s = stat($data); var_dump($s); if ($result == 0) { echo "eio_mknod_ok"; } @unlink($data); } eio_mknod($temp_filename, EIO_S_IFIFO, 0, EIO_PRI_DEFAULT, "my_mknod_callback", $temp_filename); eio_event_loop(); ?> The above example will output something similar to: array(26) { [0]=> int(17) [1]=> int(2337608) [2]=> int(4096) [3]=> int(1) [4]=> int(1000) [5]=> int(100) [6]=> int(0) [7]=> int(0) [8]=> int(1318241261) [9]=> int(1318241261) [10]=> int(1318241261) [11]=> int(4096) [12]=> int(0) ["dev"]=> int(17) ["ino"]=> int(2337608) ["mode"]=> int(4096) ["nlink"]=> int(1) ["uid"]=> int(1000) ["gid"]=> int(100) ["rdev"]=> int(0) ["size"]=> int(0) ["atime"]=> int(1318241261) ["mtime"]=> int(1318241261) ["ctime"]=> int(1318241261) ["blksize"]=> int(4096) ["blocks"]=> int(0) } eio_mknod_ok SEE ALSO eio_open. PHP Documentation Group EIO_MKNOD(3)
Man Page