ignore_user_abort

(PHP 4, PHP 5, PHP 7, PHP 8)

ignore_user_abortУстанавливает, должно ли отключение клиента прерывать выполнение скрипта

Описание

ignore_user_abort(?bool$enable = null): int

Функция устанавливает, должно ли отключение клиента приводить к прерыванию скрипта.

Скрипт завершит работу при следующей попытке что-либо записать, когда PHP-скрипт запустили как скрипт командной строки и TTY-терминал скрипта отключился без прерывания работы скрипта, если только для параметра enable не установили значение true.

Список параметров

enable

Функция устанавливает ini-настройку ignore_user_abort значением параметра enable, если параметр задан и не равен null. Функция вернёт предыдущее значение директивы без изменения, если параметр не задали.

Возвращаемые значения

Функция возвращает предыдущее значение директивы в виде целого числа.

Список изменений

ВерсияОписание
8.0.0 Параметр enable теперь принимает значение null.

Примеры

Пример #1 Пример использования функции ignore_user_abort()

<?php

// Игнорировать прерывания пользователя и разрешить скрипту
// выполняться постоянно
ignore_user_abort(true);
set_time_limit(0);

echo
'Тестирование обработки соединения в PHP';

// Запуск бессмысленного цикла,
// который, как мы надеемся, когда-нибудь заставит нас уйти
// со страницы или нажать кнопку «Стоп»
while (1) {
// Завершено ли соединение?
if (connection_status() != CONNECTION_NORMAL) {
break;
}

// Пауза на 10 секунд
sleep(10);
}

// Если скрипт достиг этой строки, значит, сработала
// управляющая конструкция break в цикле while

// Здесь можно записывать логи или выполнять
// другие необходимые операции независимо
// от браузера

?>

Примечания

PHP не обнаружит, что пользователь прервал соединение, пока скрипт не сделает попытку отправить информацию клиенту. Простое выполнение инструкции echo не гарантирует отправку информации, смотрите описание функции flush().

Смотрите также

To Top