Dutch PHP Conference 2025 - Call For Papers

eio_mknod

(PECL eio >= 0.0.1dev)

eio_mknodCreate a special or ordinary file

Опис

eio_mknod(
    string $path,
    int $mode,
    int $dev,
    int $pri = EIO_PRI_DEFAULT,
    callable $callback = NULL,
    mixed $data = NULL
): resource

eio_mknod() creates ordinary or special(often) file.

Увага

Наразі ця функція не документована. Доступний лише список її параметрів.

Параметри

path

Path 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

Прогляньте також

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top