PHP下载文件函数与用法示例


Posted in PHP onSeptember 27, 2019

本文实例讲述了PHP下载文件函数与用法。分享给大家供大家参考,具体如下:

文件链接

<div>
  <a href="./file.zip" rel="external nofollow" >链接</a>
</div>

PHP拼接下载

<div>
  <a href = "http://aa.aa.aa/funtwo.php?filename='file'">链接</a>
</div>
<?php
//获取文件名 取出单引号 完善文件名
$filename = $_GET['filename'];
$filename=trim($filename,"''");
$filename = $filename.'.zip'; //获取文件名称
// header:主机名文件名 下载
$host_addr = $_SERVER['HTTP_HOST'].'/'; //当前域名
header('location:http://'.$host_addr.$filename);

Header附件下载

<?php
//下载文件名
$file_name = 'file.zip';
//以只读和二进制模式打开文件
$file = fopen ( $file_name, "rb" );
//这是一个文件流格式的文件
Header ( "Content-type: application/octet-stream" );
//请求范围的度量单位--字节
Header ( "Accept-Ranges: bytes" );
//Content-Length是指定包含于请求或响应中数据的字节长度
Header ( "Accept-Length: " . filesize (  $file_name ) );
//用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
Header ( "Content-Disposition: attachment; filename=" . $file_name );
//读取文件内容并直接输出到浏览器
echo fread ( $file, filesize ( $file_name ) );
fclose ( $file );

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP的面试题集
Nov 19 PHP
php 结果集的分页实现代码
Mar 10 PHP
PHP中10个不常见却非常有用的函数
Mar 21 PHP
PHP 写文本日志实现代码
May 18 PHP
PHP常用代码大全(新手入门必备)
Jun 29 PHP
PHP中“简单工厂模式”实例代码讲解
Sep 04 PHP
推荐5款跨平台的PHP编辑器
Dec 25 PHP
php生成zip文件类实例
Apr 07 PHP
php实现xml转换数组的方法示例
Feb 03 PHP
yii 2.0中表单小部件的使用方法示例
May 23 PHP
PHP排序算法之基数排序(Radix Sort)实例详解
Apr 21 PHP
PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能
May 31 PHP
PHP的JSON封装、转变及输出操作示例
Sep 27 #PHP
php面向对象重点知识分享
Sep 27 #PHP
php中关于换行的实例写法
Sep 26 #PHP
php伪静态验证码不显示的解决方案
Sep 26 #PHP
php源码的安装方法和实例
Sep 26 #PHP
php源码的使用方法讲解
Sep 26 #PHP
php常用的工具开发整理
Sep 26 #PHP
You might like
上传多个文件的PHP脚本
2006/11/26 PHP
php 从数据库提取二进制图片的处理代码
2009/09/09 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
基于Linux调试工具strace与gdb的常用命令总结
2013/06/03 PHP
PHP Web木马扫描器代码分享
2015/09/06 PHP
基于PHP实现栈数据结构和括号匹配算法示例
2017/08/10 PHP
Laravel框架Auth用户认证操作实例分析
2019/09/29 PHP
让ie运行js时提示允许阻止内容运行的解决方法
2010/10/24 Javascript
基于jQuery选择器的整理集合
2013/04/26 Javascript
JavaScript表单焦点自动切换代码
2016/07/24 Javascript
JS简单随机数生成方法
2016/09/05 Javascript
JS弹性运动实现方法分析
2016/12/15 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
nodejs学习笔记之路由
2017/03/27 NodeJs
Vue ElementUI之Form表单验证遇到的问题
2017/08/21 Javascript
AngularJS实时获取并显示密码的方法
2018/02/06 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结
2019/06/27 Javascript
微信小程序自定义联系人弹窗
2020/05/26 Javascript
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
2011/03/13 Python
举例讲解Python中的迭代器、生成器与列表解析用法
2016/03/20 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
对python pandas 画移动平均线的方法详解
2018/11/28 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
2018/12/15 Python
python 将有序数组转换为二叉树的方法
2019/03/26 Python
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
2019/04/11 Python
pytorch多进程加速及代码优化方法
2019/08/19 Python
Python 定义只读属性的实现方式
2020/03/05 Python
django配置app中的静态文件步骤
2020/03/27 Python
班级口号大全
2014/06/09 职场文书
霸气押韵的班级口号
2014/06/09 职场文书
爱国口号
2014/06/19 职场文书
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS
Arthas排查Kubernetes中应用频繁挂掉重启异常
2022/02/28 MySQL