Maison >développement back-end >tutoriel php >Comment puis-je implémenter des téléchargements avec reprise dans le tunneling de fichiers PHP ?
Téléchargements pouvant être repris avec le tunneling de fichiers PHP
Lors de l'utilisation de PHP pour diffuser des téléchargements de fichiers, il peut être souhaitable d'activer les téléchargements avec reprise pour les utilisateurs. Cependant, la configuration du script PHP par défaut empêche souvent la reprise des téléchargements.
Pour prendre en charge la reprise des téléchargements avec PHP, suivez ces étapes :
La mise en œuvre de ces étapes devrait permettre la reprise des téléchargements dans votre configuration de tunneling de fichiers PHP. Voici un exemple de code PHP qui illustre le processus :
$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);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!