eio_mknod

(PECL eio >= 0.0.1dev)

eio_mknodCreate a special or ordinary file

說(shuō)明

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.

警告

本函數(shù)還未編寫文檔,僅有參數(shù)列表。

參數(shù)

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

請(qǐng)求的優(yōu)先級(jí):EIO_PRI_DEFAULT,EIO_PRI_MIN,EIO_PRI_MAXnull。如果是 null,pri 將設(shè)為 EIO_PRI_DEFAULT

callback

callback 函數(shù)在請(qǐng)求完成時(shí)被調(diào)用。其應(yīng)匹配一下原型:

void callback(mixed $data, int $result[, resource $req]);
data

傳遞給請(qǐng)求的用戶數(shù)據(jù)。

result

針對(duì)請(qǐng)求的結(jié)果的值。通常是相應(yīng)的系統(tǒng)調(diào)用返回的值。

req

可選的請(qǐng)求資源,可被 eio_get_last_error() 之類的函數(shù)使用。

data

Arbitrary variable passed to callback.

返回值

eio_mknod() returns request resource on success, 或者在失敗時(shí)返回 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_filenameEIO_S_IFIFO0,
    
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

參見(jiàn)