内容目录
下面是使用PHP实现的文件下载功能的入门示例代码,请根据实际需求情况进行相应的修改:
<?php
//下载服务器磁盘中的文件D:/test.rar
$file_path = 'D:/test.rar';
file_exists($file_path) or die('指定的文件不存在!');
$file_name = basename($file_path); //获取独立的文件名
$file_size = filesize($file_path);
$f = fopen($file_path, 'r'); //以只读形式打开指定的文件
//设置响应头信息
header('Content-Type:application/octet-stream');
header('Accept-Ranges:bytes');
header('Accept-Length:'.$file_size);
//此处暂未考虑中文乱码的问题
header('Content-Disposition:attachment;filename='.$file_name);
$buffer = 4096;
while (!feof($f)) { //循环读取,直到读取到文件末尾
echo fread($f, $buffer); //读取并进行响应输出
}
fclose($f); //读取文件完毕,关闭文件指针
?>
如果需要下载的文件名称包含中文,请参考文章《PHP中访问中文名称的文件时出错》。
0 条评论
撰写评论