简单的php服务文件下载,php文件下载
header("Content-type:text/html;charset=utf-8");
$file_name="XXX.mp3";
//用以解決中文不能顯示出來(lái)的問(wèn)題
$file_name=iconv("utf-8","gb2312",$file_name);
$file_sub_path=$_SERVER['DOCUMENT_ROOT']."/images/";
$file_path=$file_sub_path.$file_name;
//首先要判斷給定的文件存在與否
if(!file_exists($file_path)){
echo "沒(méi)有該文件";
return;
}
$fp=fopen($file_path,"r");
$file_size=filesize($file_path);
//下載文件需要用到的頭
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length:".$file_size);
Header("Content-Length:".$file_size);
Header("Content-Disposition: attachment; filename=".$file_name);
$buffer=1024;
$file_count=0;
//向?yàn)g覽器返回?cái)?shù)據(jù)
while(!feof($fp) && $file_count
$file_con=fread($fp,$buffer);
$file_count+=$buffer;
echo $file_con;
}
fclose($fp);
這代碼貌似沒(méi)有問(wèn)題,可以正常下載,但是有時(shí)有下載的文件 不全的情況, 是因?yàn)橛锌赡芫彺鎱^(qū)有其他數(shù)據(jù),所以在輸出前清除一下緩存區(qū)
所以最好在循環(huán)前加
ob_clean();
flush();
標(biāo)簽:文件,name,Content,Header,file,path,php,下載,size
來(lái)源: https://www.cnblogs.com/fps2tao/p/10709316.html
總結(jié)
以上是生活随笔為你收集整理的简单的php服务文件下载,php文件下载的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 支付宝app如何绑定邮箱
- 下一篇: 微软恢复 Xbox《战争机器 1/2/3