linux能编译fopen_s,fopen_s+linux

HTTP断点续传原理Http头 Range、Content-Range()HTTP头中一般断点下载时才用到Range和Content-Range实体头,Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300)Content-Range用于响应头请求下载整个文件:GET /test.rar HTTP/1.1Connection: closeHost: 116...
摘要由CSDN通过智能技术生成

HTTP断点续传原理Http头 Range、Content-Range()HTTP头中一般断点下载时才用到Range和Content-Range实体头,Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300)Content-Range用于响应头请求下载整个文件:GET /test.rar HTTP/1.1

Connection: close

Host: 116.1.219.219

Range: bytes=0-801 //一般请求下载整个文件是bytes=0- 或不用这个头一般正常回应HTTP/1.1 200 OK

Content-Length: 801

Content-Type: application/octet-stream

Content-Range: bytes 0-800/801 //801:文件总大小

FileDownload.class.php

[php] view plain copy

/** php下载类,支持断点续传

* Date: 2013-06-30

* Author: fdipzone

* Ver: 1.0

*

* Func:

* download: 下载文件

* setSpeed: 设置下载速度

* getRange: 获取header中Range

*/

class FileDownload{ // class start

private $_speed = 512; // 下载速度

/** 下载

* @param String $file 要下载的文件路径

* @param String $name 文件名称,为空则与下载的文件名称一样

* @param boolean $reload 是否开启断点续传

*/

public function download($file, $name='', $reload=false){

if(file_exists($file)){

if($name==''){

$name = basename($file);

}

$fp = fopen($file, 'rb');

$file_size = filesize($file);

$ranges = $this->getRange($file_size);

header('cache-cont

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值