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
Errorgeworfen. - recursive
- Wenn
true, werden auch verschachtelte Verzeichnisse ueberwacht. Standard istfalse. - coalesce
- Ereignis-Pufferungsmodus.
true(Standard) — Ereignisse werden nach dem SchluesselPfad/Dateinamegruppiert. Wiederholte Aenderungen an derselben Datei fuehren dierenamed/changed-Flags per OR zusammen.false— jedes OS-Ereignis wird als separates Element in einem Ringpuffer gespeichert.
Fehler/Ausnahmen
Error— der Pfad existiert nicht oder ist nicht zur Ueberwachung verfuegbar.
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
- FileSystemWatcher::close — Ueberwachung stoppen
- FileSystemWatcher — Konzeptuebersicht