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


Posted in PHP onSeptember 25, 2015

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
php基础知识:类与对象(1)
Dec 13 PHP
基于php缓存的详解
May 15 PHP
深入PHP操作MongoDB的技术总结
Jun 02 PHP
PHP 通过Socket收发十六进制数据的实现代码
Aug 16 PHP
完美实现wordpress禁止文章修订和自动保存的方法
Nov 03 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
Dec 17 PHP
PHP简单获取网站百度搜索和搜狗搜索收录量的方法
Aug 23 PHP
PHP中in_array函数使用的问题与解决办法
Sep 11 PHP
Laravel中10个有用的用法小结
May 06 PHP
php输出控制函数和输出函数生成静态页面
Jun 27 PHP
Laravel框架控制器的middleware中间件用法分析
Sep 30 PHP
PHP执行系统命令函数实例讲解
Mar 03 PHP
分享3个php获取日历的函数
Sep 25 #PHP
PHP中配置IIS7实现基本身份验证的方法
Sep 24 #PHP
常见PHP数据库解决方案分析介绍
Sep 24 #PHP
又十个超级有用的PHP代码片段
Sep 24 #PHP
PHP易混淆知识整理笔记
Sep 24 #PHP
PHP直接修改表内容DataGrid功能实现代码
Sep 24 #PHP
PHP生成条形码大揭秘
Sep 24 #PHP
You might like
用PHP连mysql和oracle数据库性能比较
2006/10/09 PHP
php绝对路径与相对路径之间关系的的分析
2010/03/03 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
CodeIgniter框架验证码类库文件与用法示例
2017/03/18 PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
2017/04/18 PHP
thinkPHP分页功能实例详解
2017/05/05 PHP
jQuery Ajax 全解析
2009/02/08 Javascript
javascript css在IE和Firefox中区别分析
2009/02/18 Javascript
jQuery实现鼠标经过事件的延时处理效果
2020/08/20 Javascript
基于Bootstrap3表格插件和分页插件实例详解
2016/05/17 Javascript
JS简单实现DIV相对于浏览器固定位置不变的方法
2016/06/17 Javascript
使用do...while的方法输入一个月中所有的周日(实例代码)
2016/07/22 Javascript
浅谈Nodejs应用主文件index.js
2016/08/28 NodeJs
javascript中Date对象的使用总结
2016/11/21 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
解决IE7中使用jQuery动态操作name问题
2017/08/28 jQuery
Node.js JSON模块用法实例分析
2019/01/04 Javascript
layer.open 获取不到表单信息的解决方法
2019/09/26 Javascript
Python中map,reduce,filter和sorted函数的使用方法
2015/08/17 Python
Python字典及字典基本操作方法详解
2018/01/30 Python
windows下 兼容Python2和Python3的解决方法
2018/12/05 Python
Python3.6.2调用ffmpeg的方法
2019/01/10 Python
python实现在遍历列表时,直接对dict元素增加字段的方法
2019/01/15 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
python getpass实现密文实例详解
2019/09/24 Python
PyCharm刷新项目(文件)目录的实现
2020/02/14 Python
Matplotlib使用字符串代替变量绘制散点图的方法
2020/02/17 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
html5定位获取当前位置并在百度地图上显示
2014/08/22 HTML / CSS
幼儿园教师自我评价
2015/03/04 职场文书
农村党员干部承诺书
2015/05/04 职场文书
运动会宣传语
2015/07/13 职场文书
《卖火柴的小女孩》教学反思
2016/02/19 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
OpenCV-Python实现人脸美白算法的实例
2021/06/11 Python