Zum Inhalt springen

connection_aborted()

Einführung in die Funktion connection_aborted()

Die Funktion connection_aborted() in PHP wird verwendet, um zu prüfen, ob der Client die Verbindung zum Webserver abgebrochen hat. Beachten Sie, dass diese Funktion nur mit Webserver-SAPIs (wie Apache oder Nginx) funktioniert und in der CLI-SAPI nicht verfügbar ist. Sie ist hauptsächlich bei langlaufenden Skripten oder Batch-Prozessen nützlich, bei denen eine Trennung des Clients die Ausführung stoppen sollte. Im Gegensatz zu serverseitigen Timeouts erkennt diese Funktion spezifisch, wenn der Client-Browser oder das Skript die Verbindung vorzeitig schließt.

Verwendung der Funktion connection_aborted()

Die Funktion connection_aborted() gibt einen booleschen Wert zurück (true oder false). Numerisch ausgewertet entspricht true dem Wert 1 (was anzeigt, dass der Client die Verbindung abgebrochen hat), und false entspricht 0 (was anzeigt, dass die Verbindung noch aktiv ist).

Beispielverwendung der Funktion connection_aborted()

Hier ist ein Beispiel dafür, wie die Funktion connection_aborted() in PHP verwendet werden kann:

php
<?php

// Typically used in long-running scripts or loops to detect client disconnection
if (connection_aborted()) {
  // Clean up resources or stop processing
  // e.g., close open files, release locks, or log the disconnection event
} else {
  // Continue normal execution
}

In diesem Beispiel wird die Funktion connection_aborted() aufgerufen, um zu prüfen, ob der Client die Verbindung abgebrochen hat, und der Rückgabewert wird verwendet, um zu bestimmen, welche Aktion ausgeführt werden soll.

Bei langlaufenden Skripten wird sie häufig innerhalb einer Schleife verwendet, um die Ausführung vorzeitig zu beenden:

php
<?php
$processing = true;

while ($processing) {
  // Perform a chunk of work
  do_work();

  // Check if the client has disconnected
  if (connection_aborted()) {
    $processing = false; // Break the loop early
  }
}
?>

Fazit

Zusammenfassend lässt sich sagen, dass die Funktion connection_aborted() in PHP nützlich sein kann, um zu prüfen, ob der Client die Verbindung abgebrochen hat, und um entsprechende Maßnahmen basierend auf dem Verbindungsstatus zu ergreifen.

Praxis

Wie setzt man korrekt einen Verbindungstimeout in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.