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 相关文章推荐
用IE远程创建Mysql数据库的简易程序
Oct 09 PHP
php程序总是提示验证码输入有误解决方案
Jan 07 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
Feb 02 PHP
PHP遍历数组的三种方法及效率对比分析
Feb 12 PHP
Zend Framework教程之请求对象的封装Zend_Controller_Request实例详解
Mar 07 PHP
Yii2框架使用计划任务的方法
May 25 PHP
Nginx环境下PHP flush失效的解决方法
Oct 19 PHP
php 基础函数
Feb 10 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
php 提交表单 关闭layer弹窗iframe的实例讲解
Aug 20 PHP
discuz论坛更换域名,详细文件修改步骤
Dec 09 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
Sorting Array Values in PHP(数组排序)
2011/09/15 PHP
APACHE的AcceptPathInfo指令使用介绍
2013/01/18 PHP
网站防止被刷票的一些思路与方法
2015/01/08 PHP
PHP aes (ecb)解密后乱码问题
2015/06/22 PHP
PHP生成各种常见验证码和Ajax验证过程
2016/01/10 PHP
PHP写的简单数字验证码实例
2017/05/23 PHP
利用百度地图JSAPI生成h7n9禽流感分布图实现代码
2013/04/15 Javascript
JS JSON对象转为字符串的简单实现方法
2013/11/18 Javascript
JavaScript避免内存泄露及内存管理技巧
2014/09/05 Javascript
封装好的js判断操作系统与浏览器代码分享
2015/01/09 Javascript
seajs加载jquery时提示$ is not a function该怎么解决
2015/10/23 Javascript
JS Attribute属性操作详解
2016/05/19 Javascript
vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
2017/03/13 Javascript
微信小程序开发之数据存储 参数传递 数据缓存
2017/04/13 Javascript
vue使用vue-i18n实现国际化的实现代码
2018/04/08 Javascript
r.js来合并压缩css文件的示例
2018/04/26 Javascript
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
2018/05/15 Javascript
element-ui 中的table的列隐藏问题解决
2018/08/24 Javascript
Vue组件生命周期运行原理解析
2020/11/25 Vue.js
Python的Scrapy爬虫框架简单学习笔记
2016/01/20 Python
centos6.7安装python2.7.11的具体方法
2017/01/16 Python
Django与JS交互的示例代码
2017/08/23 Python
神经网络相关之基础概念的讲解
2018/12/29 Python
如何通过雪花算法用Python实现一个简单的发号器
2019/07/03 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
python实现俄罗斯方块小游戏
2020/04/24 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
python+requests接口自动化框架的实现
2020/08/31 Python
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
2019/01/17 HTML / CSS
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
2014大学生全国两会学习心得体会
2014/03/13 职场文书
商业门面租房协议书
2014/11/25 职场文书
幼儿园大班个人总结
2015/02/28 职场文书
清明节随笔
2015/08/15 职场文书
家长对孩子的寒假评语
2015/10/09 职场文书
python 单机五子棋对战游戏
2022/04/28 Python