$end) { http_response_code(416); header("Content-Range: bytes */$size"); return true; } http_response_code(206); header("Content-Range: bytes $start-$end/$size"); } header('Content-Length: ' . ($end - $start + 1)); if ($_SERVER['REQUEST_METHOD'] === 'HEAD') { return true; } $in = fopen($file, 'rb'); $out = fopen('php://output', 'wb'); stream_copy_to_stream($in, $out, $end - $start + 1, $start); return true;