Ciao a tutti,
ho l'esigenza di controllare se un file esterno è stato modificato e, se è avvenuto, fare il refresh di una pagina. Per farlo ho pensato (richiamando la pagina con ajax ogni secondo) di confrontare l'ora attuale con l'ora del file e poi stampare il valore 1 se modificato, oppure 0.

Teoricamente funziona ma nella pratica qualcosa va storto.
Ogni volta che modifico il file esterno gli viene attribuito (giustamente) il valore 1 ma anziché passare immediatamente dopo al valore 0, rimane ad 1 per alcuni secondi causando il refresh continuo della pagina.

Cosa sbaglio? Oppure, vista la mia ignoranza, cosa non so?

Codice PHP:

 $esito 
'0';  $time=date("H:i:s" ); $adesso=strtotime("$time");
 
$filename 'c:\test.txt';
 if (
file_exists($filename)) { $lastmodifica date ("H:i:s"filemtime($filename)); $lastmod=strtotime("$lastmodifica"); }
 if (
$adesso-1<$lastmod){     $esito '1'// 1 refresh necessario }else{     $esito = '0';
// 0 refresh non necessario}
echo $esito
Grazie per l'eventuale aiuto o anche solo per averlo letto