Я не уверен, будет ли это работать на Вас, но я прочитал страницу некоторое время назад описание метод, который использует gdb
Обратите внимание на функцию ignore_user_abort
и connection_abort
.
Вот что я в итоге сделал (спасибо Гамбо):
ignore_user_abort(true);
$handle = fopen($file_path, 'r');
while ( ! feof($handle)) {
echo fread($handle, 4096);
if (connection_aborted()) {
$transfer_success = false;
$bytes_transferred = ftell($handle);
break;
}
}
fclose($handle);