FileSystemWatcher::__construct

(PHP 8.6+, True Async 1.0)

public FileSystemWatcher::__construct(
    string $path,
    bool $recursive = false,
    bool $coalesce = true
)

Erstellt einen Watcher und beginnt sofort mit der Verfolgung von Aenderungen. Ereignisse werden ab dem Moment der Erstellung gepuffert, auch wenn die Iteration noch nicht begonnen hat.

Parameter

path
Der Pfad zu einer Datei oder einem Verzeichnis, das ueberwacht werden soll. Wenn der Pfad nicht existiert oder nicht zugaenglich ist, wird ein Error geworfen.
recursive
Wenn true, werden auch verschachtelte Verzeichnisse ueberwacht. Standard ist false.
coalesce
Ereignis-Pufferungsmodus. true (Standard) — Ereignisse werden nach dem Schluessel Pfad/Dateiname gruppiert. Wiederholte Aenderungen an derselben Datei fuehren die renamed/changed-Flags per OR zusammen. false — jedes OS-Ereignis wird als separates Element in einem Ringpuffer gespeichert.

Fehler/Ausnahmen

Beispiele

Beispiel #1 Ein Verzeichnis ueberwachen

<?php
use Async\FileSystemWatcher;

$watcher = new FileSystemWatcher('/tmp/mydir');

foreach ($watcher as $event) {
    echo "{$event->filename}\n";
    $watcher->close();
}
?>

Beispiel #2 Rekursive Ueberwachung im Rohmodus

<?php
use Async\FileSystemWatcher;

$watcher = new FileSystemWatcher('/var/log', recursive: true, coalesce: false);

foreach ($watcher as $event) {
    echo "[{$event->path}] {$event->filename}\n";
}
?>

Siehe auch