W3docs

connection_timeout()

La fonction connection_timeout() en PHP permet de vérifier si le navigateur client a expiré la connexion au serveur web.

connection_aborted()

Introduction à la fonction connection_aborted()

La fonction connection_aborted() en PHP permet de vérifier si le client a interrompu la connexion au serveur web. Notez que cette fonction ne fonctionne qu'avec les SAPI de serveur web (tels qu'Apache ou Nginx) et n'est pas disponible dans le SAPI CLI. Elle est principalement utile dans les scripts à longue exécution ou les traitements par lots où la déconnexion du client doit arrêter l'exécution. Contrairement aux délais d'expiration côté serveur, cette fonction détecte spécifiquement le moment où le navigateur ou le script client ferme prématurément la connexion.

Utilisation de la fonction connection_aborted()

La fonction connection_aborted() retourne un boolean (true ou false). Lorsqu'elle est évaluée numériquement, true correspond à 1 (indiquant que le client a interrompu la connexion) et false correspond à 0 (indiquant que la connexion est toujours active).

Exemple d'utilisation de la fonction connection_aborted()

Voici un exemple illustrant l'utilisation de la fonction connection_aborted() en 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
}

Dans cet exemple, la fonction connection_aborted() est appelée pour vérifier si le client a interrompu la connexion, et la valeur de retour est utilisée pour déterminer l'action à entreprendre.

Pour les scripts à longue exécution, elle est couramment utilisée à l'intérieur d'une boucle afin d'interrompre l'exécution prématurément :

<?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
  }
}
?>

Conclusion

En conclusion, la fonction connection_aborted() en PHP peut être utile pour vérifier si le client a interrompu la connexion, et pour prendre les mesures appropriées en fonction de l'état de la connexion.

Pratique

Pratique
Quelle est la bonne façon de définir un délai de connexion en PHP ?
Quelle est la bonne façon de définir un délai de connexion en PHP ?
Was this page helpful?