PHP实现文件上传下载之文件下载
文件下载
对于浏览器来说不识别的,可以直接下载,但对于能识别的,则需要进行一些操作
代码如下:
<?php
//获取传递过来的路径信息
$filename=$_GET['filename'];
//判断是否有值,没有则不执行下面的php语句
if($filename){
header("Content-Disposition:attachment;filename=download_$filename");
//Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。
//格式:content-disposition = "Content-Disposition" ":" disposition-type *( ";" disposition-parm
//Content-Disposition为属性名
//disposition-type是以什么方式下载,如attachment为以附件方式下载
//disposition-parm为默认保存时的文件名
readfile($filename);
exit;
}
?>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="format-detection" content="telephone=no" />
<title>文件下载</title>
<meta charset="utf-8" />
</head>
<body>
<a href="1.rar">下载1.rar</a>
<br />
<a href="1.jpg">下载1.jpg</a>
<br />
<a href="download.php?filename=1.jpg">通过程序下载1.jpg</a>
</body>
</html>注:测试的时候,文件的同级目录下,必须存在1.rar、1.jpg,也可以通过修改路径,改变到自己的文件想要的文件夹下面
代码解释
有三个下载连接
一个对应图片(浏览器可以识别)
一个对应压缩文件(浏览器不可以识别)
最后一个还是图片,我们通过传递路径给当前页面,在页面顶端的php代码中实现当成一个附件打开或者保存
php代码部分在程序中已经注释的很详细,大家可以参考
