ignore_user_abort

(PHP 4, PHP 5, PHP 7)

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

Описание

ignore_user_abort ( bool|null $enable = null ) : int

Устанавливает, необходимо ли прерывать работу скрипта при отключении клиента.

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

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

enable

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

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

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

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

Версия Описание
8.0.0 enable теперь допускает значение null.

Примеры

Пример #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().

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