php下载文件 强制任意文件格式下载_PHP教程
程序员文章站
2022-04-09 18:13:07
...
用php下载一些文件,一般就是为了隐藏文件的真实下载地址才需要这样,否则这样会增加服务器负担,不如直接提供软件的地址。
一个简单的php文件下载源代码,虽不支持断点续传等,但是可以满足一些常用的需求了。php下载文件其实用一个a标签就能实现,比如 magento-1.8.1.0.zip 。但是遇到一些浏览器能识别的格式,比如.txt,.html,.pdf等,再用abc.txt 想必也知道会发生什么了。
php /** * 文件下载 * **/ header("Content-type:text/html;charset=utf-8"); download('web/magento-1.8.1.0.zip', 'magento下载'); function download($file, $down_name){ $suffix = substr($file,strrpos($file,'.')); //获取文件后缀 $down_name = $down_name.$suffix; //新文件名,就是下载后的名字 //判断给定的文件存在与否 if(!file_exists($file)){ die("您要下载的文件已不存在,可能是被删除"); } $fp = fopen($file,"r"); $file_size = filesize($file); //下载文件需要用到的头 header("Content-type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Accept-Length:".$file_size); header("Content-Disposition: attachment; filename=".$down_name); $buffer = 1024; $file_count = 0; //向浏览器返回数据 while(!feof($fp) && $file_count $file_size