(PECL eio >= 0.0.1dev)
eio_mknod — Create a special or ordinary file
$path,$mode,$dev,$pri = EIO_PRI_DEFAULT,$callback = NULL,$data = NULLeio_mknod() creates ordinary or special(often) file.
Наразі ця функція не документована. Доступний лише список її параметрів.
pathPath for the new node(file).
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.
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 special file. Otherwise
dev ignored. See mknod(2) man page for
details.
priПріоритет запиту: EIO_PRI_DEFAULT, EIO_PRI_MIN, EIO_PRI_MAX або null.
Якщо параметру pri
задано значення null, то пріоритетом буде
EIO_PRI_DEFAULT.
callback
Функція callback
викликається після виконання запиту. Вона має відповідати наступному шаблону:
void callback(mixed $data, int $result[, resource $req]);dataКористувацькі дані, що будуть в запиті.
resultЗначення результату, що стосується запиту; повертається системним викликом.
reqНеобов'язковий ресурс запиту, який використовують з такими функціями, як eio_get_last_error().
data
Arbitrary variable passed to callback.
eio_mknod() returns request resource on success, або false в разі помилки.
Приклад #1 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();
?>Поданий вище приклад виведе щось схоже на:
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