本文实例讲述了PHP实现断点续传下载的方法。分享给大家供大家参考。具体如下:
$fname = \'http://XXXX/MMLDZG.mp3\';
$fp = fopen($fname,\'rb\');
$fsize = filesize($fname);
if (isset($_SERVER[\'HTTP_RANGE\']) && ($_SERVER[\'HTTP_RANGE\'] != \"\") && preg_match(\"/^bytes=([0-9]+)-$/i\", $_SERVER[\'HTTP_RANGE\'], $match) && ($match[1] < $fsize)) { $start = $match[1]; } else { $start = 0; } @header(\"Cache-control: public\"); @header(\"Pragma: public\"); if ($star--> 0) {
fseek($fp, $start);
Header(\"HTTP/1.1 206 Partial Content\");
Header(\"Content-Length: \" . ($fsize - $start));
Header(\"Content-Ranges: bytes\" . $start . \"-\" . ($fsize - 1) . \"/\" . $fsize);
} else {
header(\"Content-Length: $fsize\");
Header(\"Accept-Ranges: bytes\");
}
@header(\"Content-Type: application/octet-stream\");
@header(\"Content-Disposition: attachment;filename=mmdld.mp3\");
fpassthru($fp);
fpassthru();//函数输出文件指针处的所有剩余数据。
该函数将给定的文件指针从当前的位置读取到 EOF,并把结果写到输出缓冲区。
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/9671
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我