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.

Warning

��������δ��д�ĵ������в����б�

����

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������� NULL��pri ����Ϊ 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 or FALSE on error.

����

Example #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

�μ�

  • eio_open