ignore_user_abort
(PHP 4, PHP 5, PHP 7, PHP 8)
ignore_user_abort — Установить, должно ли отключение клиента прерывать выполнение скрипта
Описание
ignore_user_abort(
?bool $enable
= null
):
int
При работе с PHP-скриптом в командной строке, когда терминал скрипта
отключается без прерывания работы скрипта, скрипт будет остановлен,
если параметр enable
не равен true
Список параметров
-
enable
-
Если параметр задан и не null
, то эта функция устанавливает ini-настройку
ignore_user_abort,
заданным значением параметра enable
.
Если же параметр не задан, функция вернёт предыдущее значение опции
без его изменения.
Возвращаемые значения
Возвращает предыдущее значение в виде целого числа.
Примеры
Пример #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().