FileSystemWatcher::__construct
(PHP 8.6+, True Async 1.0)
public FileSystemWatcher::__construct(
string $path,
bool $recursive = false,
bool $coalesce = true
)
Crea un watcher e inizia immediatamente a tracciare le modifiche. Gli eventi vengono bufferizzati dal momento della creazione, anche se l’iterazione non è ancora iniziata.
Parametri
- path
- Il percorso di un file o una directory da monitorare.
Se il percorso non esiste o non è accessibile, viene lanciato un
Error. - recursive
- Se
true, vengono monitorate anche le directory annidate. Il valore predefinito èfalse. - coalesce
- Modalità di bufferizzazione degli eventi.
true(predefinito) — gli eventi vengono raggruppati per chiavepath/filename. Le modifiche ripetute allo stesso file uniscono i flagrenamed/changedtramite OR.false— ogni evento del sistema operativo viene memorizzato come elemento separato in un buffer circolare.
Errori/Eccezioni
Error— il percorso non esiste o non è disponibile per il monitoraggio.
Esempi
Esempio #1 Monitoraggio di una directory
<?php
use Async\FileSystemWatcher;
$watcher = new FileSystemWatcher('/tmp/mydir');
foreach ($watcher as $event) {
echo "{$event->filename}\n";
$watcher->close();
}
?>
Esempio #2 Monitoraggio ricorsivo in modalità raw
<?php
use Async\FileSystemWatcher;
$watcher = new FileSystemWatcher('/var/log', recursive: true, coalesce: false);
foreach ($watcher as $event) {
echo "[{$event->path}] {$event->filename}\n";
}
?>
Vedi anche
- FileSystemWatcher::close — Interrompe il monitoraggio
- FileSystemWatcher — Panoramica del concetto