PHP-скрипт будет продолжать работать после того, как клиент прервет соединение (это не будет представлять угрозу безопасности), но только до max_execution_time
(устанавливается в php.ini или через PHP-скрипт, обычно по умолчанию 30 секунд ) ..
Например:
<?php
$fh = fopen("bluh.txt", 'w');
for($i=0; $i<20; $i++) {
echo $i."<br/>";
fwrite($fh,$i."\n");
sleep(1);
}
fclose($fh);
?>
Запустите его в своем браузере и закройте браузер до его завершения. Вы обнаружите, что через 20 секунд файл содержит все значения $i
.
Измените верхнюю границу цикла for на 100 вместо 20, и вы обнаружите, что он работает только с 0 до 29. Из-за PHP max_execution_time
сценарий отключается и умирает.