Как написать PHP-скрипт, который продолжает работать, даже после вымывания какого-либо текста и завершения HTTP-запроса? Это возможно?
Запуск PHP-приложения навсегда или до завершения php
ignore_user_abort(true); set_time_limit(0);
Вас может заинтересовать директива конфигурации ignore_user_abort и / или функция ignore_user_abort :
Устанавливает, должен ли клиент отключиться, чтобы сценарий был прерван.
Используя это, вы можете:
flush и / или ob_flush ignore_user_abort (либо сейчас, либо раньше) Браузер пользователя, вероятно, все равно укажет «ожидание» или «загрузка», но содержимое страницы будет загружено и отображено – и даже если пользователь нажимает «стоп», ваш скрипт должен продолжить выполнение.
Для получения дополнительной информации на странице руководства этой функции есть пример, и вы можете взглянуть на эту статью: Как использовать ignore_user_abort() для обработки вне диапазона
Конечно, хотя это может быть использовано для некоторого легкого процесса (например, «очистка» материала в конце страницы, показывая его как можно быстрее пользователю) , вы все равно будете ограничены max_execution_time и т. П.
Таким образом, это не решение, которое должно использоваться для длинных / тяжелых вычислений.