PHP – определить, сколько байтов отправлено через http

Возможно ли в PHP получить количество байтов, переданных клиенту? Например, если я выводя 10-мегабайтный файл, есть ли способ узнать, были ли отправлены все 10 МБ клиенту или чтобы проверить, прерывал ли клиент часть передачи? Я знаю, что Apache будет записывать это позже, но я хотел бы получить доступ к данным в PHP.

    Взгляните на ignore_user_abort и connection_abort .

    Вот что я сделал (спасибо Gumbo):

     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);