liwya 发表于 2018-12-11 14:02:30

php下载文件函数


[*]代码:
/*
@desc:php下载文件函数,支持限速
@param name 待下载文件名
@param rate 速度,单位kb
*/
function download($file,$rate=false){
set_time_limit(0);
$content = file_get_contents($file);
$filesize = strlen($content);
header ('Content-Length: '.$filesize);
header ('Content-type: application/file');
header ("Content-Disposition: attachment; filename=".basename($file));
if($rate){
ob_start();
$fr=fopen($file,"rb");
while (!feof($fr)){
$data = fread($fr,round($rate*1024));
echo $data;
ob_flush();
flush();
sleep(1);
}
if($fr){
fclose($fr);
}
}else{
readfile($file);
}
}
[*]测试:
download('2018.rar',128);
[*]输出:
http://i2.运维网.com/images/blog/201806/09/4cde023e2bf52a90032536c6310065a8.png



页: [1]
查看完整版本: php下载文件函数