(PHP 4, PHP 5, PHP 7)
ignore_user_abort — Устанавливает, необходимо ли прерывать работу скрипта при отключении клиента
$value
] )Устанавливает, необходимо ли прерывать работу скрипта при отключении клиента.
При работе с PHP скриптом в командной строке, когда терминал скрипта
отключается без прерывания работы скрипта, скрипт будет остановлен,
если параметр value
не равен TRUE
value
Если параметр задан, то функция устанавливает заданный параметр
value
функции ignore_user_abort в ini настройку.
Если же параметр не задано, то функция вернут предыдущее значение без его
изменения.
Возвращает предыдущее значение в виде целого числа.
Пример #1 Пример использования ignore_user_abort()
<?php
// Игнорирует отключение пользователя и позволяет скрипту
// быть запущенным постоянно
ignore_user_abort(true);
set_time_limit(0);
echo 'Тестирование управления соединением PHP';
// Запуск бесконечного цикла,
// который будет завершен при выходе со страницы
// либо при нажатии кнопки "Stop".
while(1)
{
// Завершено ли соединение?
if(connection_status() != CONNECTION_NORMAL)
{
break;
}
// Пауза на 10 секунд
sleep(10);
}
// Если скрипт достиг этой строки, то была
// выполнена функция 'break' из цикла while
// Здесь можно производить журналирование, либо
// выполнять другие необходимые операции независимо
// от браузера.
?>
PHP не сможет определить обрыв пользователем соединения пока не будет произведена попытка отправки информации клиенту. Простое использование выражения echo не гарантирует отправку информации, см. функцию flush().