eio_mknod
(PECL eio >= 0.0.1dev)
Create a special or ordinary file
Description
eio_mknod() creates ordinary or special(often) file.
Func
Parameters
pathPath for the new node(file).
modeSpecifies 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) andEIO_S_IFSOCK(UNIX domain socket). To specify permissions EIO_S_I* constants could be used.devIf the file type is
EIO_S_IFCHRorEIO_S_IFBLKthen dev specifies the major and minor numbers of the newly created device special file. Otherwisedevignored. See mknod(2) man page for details.priValues
callbackProto
dataArbitrary variable passed to
callback.
Return Values
eio_mknod() returns request resource on success,Falseforfailure.
Examples
eio_mknod() 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