getExtension(), $watchExts)) { $hash .= $file->getMTime() . '|' . $file->getPathname() . "\n"; } } } $fingerprint = md5($hash); $stateFile = sys_get_temp_dir() . '/xamxam-live-reload.txt'; $prev = file_exists($stateFile) ? file_get_contents($stateFile) : null; // First visit: write baseline, don't fire a reload if ($prev === null) { file_put_contents($stateFile, $fingerprint); $changed = false; } else { $changed = $fingerprint !== $prev; if ($changed) { file_put_contents($stateFile, $fingerprint); } } echo json_encode(['changed' => $changed]);