Ce face connection_aborted
connection_aborted returnează 1 dacă vizitatorul s-a deconectat și 0 altfel. Implicit, PHP oprește scriptul când observă deconectarea. Dacă ai pornit ignore_user_abort(true), scriptul continuă și poți verifica cu această funcție dacă mai are rost să trimiți date.
Ce returnează
1 dacă conexiunea a fost întreruptă, altfel 0.
Exemple
Exemplul 1: Oprire curată a unui flux de date
<?php
ignore_user_abort(true);
foreach (range(1, 100) as $pas) {
echo "data: pasul $pas\n\n";
flush();
if (connection_aborted()) {
error_log("Vizitatorul a plecat la pasul $pas");
break;
}
sleep(1);
}
Rezultat în browser
data: pasul 1
data: pasul 2
...
Greșeli frecvente
- Verifici deconectarea fără să trimiți nimic. PHP află că vizitatorul a plecat doar la o scriere, deci apelează întâi
echoșiflush().
Comenzi înrudite
connection_status: Returnează starea conexiunii cu vizitatorul: normală, întreruptă sau expirată.ignore_user_abort: Stabilește dacă scriptul continuă să ruleze după ce vizitatorul închide pagina.flush: Trimite imediat spre browser tot ce a fost afișat până acum.