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 相关文章推荐
用header 发送cookie的php代码
Mar 16 PHP
php学习 字符串课件
Jun 15 PHP
php入门学习知识点七 PHP函数的基本应用
Jul 14 PHP
解析php多线程下载远程多个文件
Jun 25 PHP
PHP数组排序函数合集 以及它们之间的联系分析
Jun 27 PHP
php获取文件内容最后一行示例
Jan 09 PHP
PHP中使用匿名函数操作数据库的例子
Nov 17 PHP
PHP字符串比较函数strcmp()和strcasecmp()使用总结
Nov 19 PHP
PHP接收json 并将接收数据插入数据库的实现代码
Dec 01 PHP
PHP上传Excel文件导入数据到MySQL数据库示例
Oct 25 PHP
PHP面向对象程序设计组合模式与装饰模式详解
Dec 02 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
Oct 15 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高级应用技巧果断收藏
2015/09/25 PHP
php实现批量修改文件名称的方法
2016/07/23 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
PHP addcslashes()函数讲解
2019/02/03 PHP
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
jQuery EasyUI API 中文文档 - TimeSpinner时间微调器
2011/10/23 Javascript
使用js正则控制input标签只允许输入的值
2013/07/29 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
JS简单实现动画弹出层效果
2015/05/05 Javascript
JavaScript事件类型中UI事件详解
2016/01/14 Javascript
学习JavaScript设计模式之装饰者模式
2016/01/19 Javascript
JS创建事件的三种方法(实例代码)
2016/05/12 Javascript
JS实现图片垂直居中显示小结
2016/12/13 Javascript
移动端效果之Swiper详解
2017/10/09 Javascript
jQuery基于cookie实现换肤功能实例
2017/10/14 jQuery
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
mpvue写一个CPASS小程序的示例
2018/09/04 Javascript
toString.call()通用的判断数据类型方法示例
2020/08/28 Javascript
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
python实现单线程多任务非阻塞TCP服务端
2017/06/13 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
详解将Django部署到Centos7全攻略
2018/09/26 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
数学国培研修感言
2014/02/13 职场文书
学雷锋演讲稿
2014/03/04 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
班组建设经验交流材料
2014/05/12 职场文书
护理学院专科毕业生求职信
2014/06/28 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS
python爬虫之利用selenium模块自动登录CSDN
2021/04/22 Python
golang日志包logger的用法详解
2021/05/05 Golang
my.ini优化mysql数据库性能的十个参数(推荐)
2021/05/26 MySQL