Rechercher une fonction PHP

inotify_init

(PECL inotify >= 0.1.2)

inotify_initInitialise une instance inotify

Description

inotify_init ( void ) : resource

Initialise une instance inotify pour utiliser avec la fonction inotify_add_watch()

Retour à la première page de Manuel PHP  Table des matières Haut

Valeurs de retour

Un flux ou FALSE en cas d'erreur.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple d'utilisatio d'inotify

<?php
// Crée une instance inotify
$fd inotify_init();

// Surveille les modifications des métadonées du fichier __FILE__ (e.g. mtime)
$watch_descriptor inotify_add_watch($fd__FILE__IN_ATTRIB);

// Génère un événement
touch(__FILE__);

// Lit les événements
$events inotify_read($fd);
print_r($events);

// Les méthodes suivantes permettent d'utiliser les fonctions inotify sans bloquer sur inotify_read():

// - Utiliser stream_select() sur $fd:
$read = array($fd);
$write null;
$except null;
stream_select($read,$write,$except,0);

// - Utiliser stream_set_blocking() sur $fd
stream_set_blocking($fd0);
inotify_read($fd); // Does no block, and return false if no events are pending

// - Utiliser inotify_queue_len() pour vérifier la taille de la file d'attente
$queue_len inotify_queue_len($fd); // If > 0, inotify_read() will not block

// Arrêt de la surveillance de __FILE__
inotify_rm_watch($fd$watch_descriptor);

// Destruction de l'instance inotify
// Cela aurait arrêté toutes les surveillances si ce n'était pas déjà fait
fclose($fd);

?>

L'exemple ci-dessus va afficher quelque chose de similaire à :

array(
  array(
    'wd' => 1,     // Egale le $watch_descriptor
    'mask' => 4,   // Le bit IN_ATTRIB est activé
    'cookie' => 0, // identifiant uique pour relier des événements (e.g. 
                   // IN_MOVE_FROM et IN_MOVE_TO)
    'name' => '',  // Le nom du fichier (e.g. si un dossier était sous surveillance)
  ),
);

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.inotify-init.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut