当前位置:首页 > PHP教程 > php上传下载 > 列表

PHP简单实现断点续传下载的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-06-19 19:38:26 浏览: 评论:0 

这篇文章主要介绍了PHP实现断点续传下载的方法,涉及php针对文件传输的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下,本文实例讲述了PHP实现断点续传下载的方法,分享给大家供大家参考,具体如下:

  1. $fname = 'http://XXXX/MMLDZG.mp3'
  2. $fp = fopen($fname,'rb'); 
  3. $fsize = filesize($fname); 
  4. 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) { 
  5.   fseek($fp$start); 
  6.   Header("HTTP/1.1 206 Partial Content"); 
  7.   Header("Content-Length: " . ($fsize - $start)); 
  8.   Header("Content-Ranges: bytes" . $start . "-" . ($fsize - 1) . "/" . $fsize); 
  9. else { 
  10.   header("Content-Length: $fsize"); 
  11.   Header("Accept-Ranges: bytes"); 
  12. @header("Content-Type: application/octet-stream"); 
  13. @header("Content-Disposition: attachment;filename=mmdld.mp3"); 
  14. fpassthru($fp); 
  15. fpassthru();//函数输出文件指针处的所有剩余数据。 

该函数将给定的文件指针从当前的位置读取到 EOF,并把结果写到输出缓冲区。

Tags: PHP断点续传下载

分享到: