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代码部分在程序中已经注释的很详细,大家可以参考