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

# ignore_user_abort

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

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

### Описание

function 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().

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

- connection_aborted() - Проверить, отключён ли клиент
- connection_status() - Возвращает битовое поле состояния соединения
- Раздел «Управление соединением» подробно рассказывает об управлении соединениями в PHP.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open