Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich fortsetzbare Downloads in PHP File Tunneling implementieren?
Fortsetzbare Downloads mit PHP File Tunneling
Bei der Verwendung von PHP zum Streamen von Dateidownloads kann es wünschenswert sein, wiederaufnehmbare Downloads für Benutzer zu ermöglichen. Allerdings verhindert das Standard-PHP-Skript-Setup oft, dass Downloads fortgesetzt werden.
Um fortsetzbare Downloads mit PHP zu unterstützen, befolgen Sie diese Schritte:
Die Implementierung dieser Schritte sollte fortsetzbare Downloads ermöglichen Ihr PHP-Datei-Tunneling-Setup. Hier ist ein Beispiel-PHP-Code, der den Prozess demonstriert:
$filesize = filesize($file); $offset = 0; $length = $filesize; if (isset($_SERVER['HTTP_RANGE'])) { preg_match('/bytes=(\d+)-(\d+)?/', $_SERVER['HTTP_RANGE'], $matches); $offset = intval($matches[1]); $length = intval($matches[2]) - $offset; } $file = fopen($file, 'r'); fseek($file, $offset); $data = fread($file, $length); fclose($file); if ($partialContent) { header('HTTP/1.1 206 Partial Content'); header('Content-Range: bytes ' . $offset . '-' . ($offset + $length) . '/' . $filesize); } header('Content-Type: ' . $ctype); header('Content-Length: ' . $filesize); header('Content-Disposition: attachment; filename="' . $fileName . '"'); header('Accept-Ranges: bytes'); print($data);
Das obige ist der detaillierte Inhalt vonWie kann ich fortsetzbare Downloads in PHP File Tunneling implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!