可以通过限制输出频率吗?例如每次读取1024之后,就进行一次sleep?
<?php
/**
* Created by PhpStorm....;
echo $data;//输出文件
sleep(1);//增加了一个sleep
}
fclose($fp);
但是通过浏览器访问,我们发现是不行的,甚至造成了浏览器只有在n秒之后才会出现下载确认框...其实,这是因为php的buffer引起的,php buffer缓冲区,会使php不会马上输出数据,而是需要等缓冲区满之后才会响应到web服务器,通过web服务器再响应到浏览器中,详细请看:关于php的buffer...首先,我们要了解http协议中,关于请求头的几个参数:
content-range和range,
在文件断点续传中,必须包含一个断点续传的参数,例如:
请求下载头:
Range: bytes=0-...,然后继续下载试试吧:
可看到,我们下载到600kb之后暂停了,然后我们代码记录下下次请求的请求数据:
<?