Stream & Abbruch
PeterK
- php
0 cyRus
In meinem Script öffne ich einen Stream, um die größe einer Datei zu überwachen (nur ein Beispiel!). Wenn nun jemand die größe der Datei ändert, bekommen alle User eine Meldung.
set_time_limit(0);
while(true) {
clearstatcache();
$newsize = filesize($file);
if($oldsize != $newsize) {
echo "Die Datei wurde geändert! Neue größe: $newsize<br>\n";
}
$oldsize = $newsize;
flush();
sleep(1); //Damit der Server nicht abstürtzt...
}
Ich hab ganz normal eine Shutdown-funktion registriert, und war überrascht, dass diese erst garnicht aufgerufen wurde. Ich hab ein bisschen weitergebohrt, und
$hfile = fopen("log.txt", "a");
fputs($hfile, connection_aborted());
fclose($hfile);
in die Schleife eingebaut. Das ergebnis: auch als der User die Seite schon längst verlassen hatte, schrieb das Script weiterhin nullen in das Script, und zwar solange, bis ich das Script per TaskManager beendete... So jetzt meine Frage: Was kann ich machen, um irgendwie den abbruch zu erkennen und die Schleife beenden??? Oder muss ich mir was anderes überlegen???
PeterK
nicht abstürtzt...
}
in die Schleife eingebaut. Das ergebnis: auch als der User die Seite schon längst verlassen hatte, schrieb das Script weiterhin nullen in das Script, und zwar solange, bis ich das Script per TaskManager beendete... So jetzt meine Frage: Was kann ich machen, um irgendwie den abbruch zu erkennen und die Schleife beenden??? Oder muss ich mir was anderes überlegen???PeterK
mit while(!connection_aborted()){ //Solange bis User abbricht (Browser beendet)