eio_mknod

(PECL eio >= 0.0.1dev)

eio_mknodCrée un fichier spécial ou ordinaire

Description

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

eio_mknod() crée un fichier spécial ou ordinaire.

Avertissement

Cette fonction est actuellement non documentée ; seule la liste des arguments est disponible.

Liste de paramètres

path

Chemin du nouveau nœud (fichier).

mode

Spécifie à la fois les permissions à utiliser et le type de nœud à créer. Il doit être une combinaison (en utilisant l'opérateur OR) d'un des types de fichier listés ci-dessous, et les permissions pour le nouveau nœud (i.e. 0640). Les types de fichier possibles sont : EIO_S_IFREG(fichier régulier), EIO_S_IFCHR(fichier de caractères), EIO_S_IFBLK(fichier de bloc spécial), EIO_S_IFIFO(FIFO - nommé pipe) et EIO_S_IFSOCK(socket de domaine UNIX). Pour spécifier les permissions, les constantes EIO_S_I* doivent être utilisées.

dev

Si le type de fichier est EIO_S_IFCHR ou EIO_S_IFBLK, alors ce paramètre spécifie le nombre majeur et mineur du nouveay fichier spécial de périphérique créé. Sinon, le paramètre dev sera ignoré. Voir la page du manuel de mknod(2) pour plus de détails.

pri

La priorité de la requête : EIO_PRI_DEFAULT, EIO_PRI_MIN, EIO_PRI_MAX, ou null. Si null est passé, le paramètre pri, en interne, est défini à EIO_PRI_DEFAULT.

callback

La fonction de rappel callback est appelée lorsque la requête est terminée. Elle doit correspondre au prototype suivant :

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

représente les données personnalisées passées à la requête.

result

représente la valeur résultante spécifique à la requête ; basiquement, la valeur retournée par l'appel système correspondant.

req

est la ressource optionnelle de la requête qui peut être utilisée avec les fonctions comme eio_get_last_error()

data

Variables arbitraires à passer à la fonction de rappel callback.

Valeurs de retour

eio_mknod() retourne la ressource demandée en cas de succès, ou false si une erreur survient.

Exemples

Exemple #1 Exemple avec eio_mknod()

<?php
// FIFO name
$temp_filename = "/tmp/eio-temp-fifo";

/* Sera appelé lorsque la fonction eio_mknod() aura terminé */
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();
?>

Résultat de l'exemple ci-dessus est similaire à :

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

Voir aussi

add a note add a note

User Contributed Notes

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