<?php
//下载接口
function downloadf(){
$name=$_GET['name'];
if(session('ID')!=null){
$file_path=iconv("UTF-8","GBK","./Uploads/download/".$name);
if(!file_exists($file_path)){
header("Content-Type: text/html;charset=utf-8");
echo "<script type='text/javascript'> alert('文件不存在!'); history.back(); </script>";
// 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);
if ( preg_match('/MSIE/i', $_SERVER['HTTP_USER_AGENT'])) {
Header("Content-Disposition: attachment; filename=".urlencode($name));
} else {
if ( preg_match('/Trident/i', $_SERVER['HTTP_USER_AGENT'])) {
Header("Content-Disposition: attachment; filename=".urlencode($name));
} else {
Header("Content-Disposition: attachment; filename=".$name);
}
}
$buffer=1024;
$file_count=0;
//向浏览器返回数据
while(!feof($fp) && $file_count<$file_size){
$file_con=fread($fp,$buffer);
$file_count+=$buffer;
echo $file_con;
}
fclose($fp);
}else{
echo "<script>alert('请登录!');history.back();</script>";
}
}
?>
php 下载封装方法
最新推荐文章于 2022-07-04 09:46:20 发布