本文实例讲述了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
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我