位置: 编程技术 - 正文

PHP使用header方式实现文件下载功能(php header refresh)

编辑:rootadmin

推荐整理分享PHP使用header方式实现文件下载功能(php header refresh),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php header refresh,php post header,php header refresh,php header refresh,php header函数,php中header的用法,php中的header,php headers,内容如对您有帮助,希望把文章链接给更多的朋友!

先给大家介绍下PHP header() 函数

定义和用法

header() 函数向客户端发送原始的 HTTP 报头。

认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数(在 PHP 4 以及更高的版本中,您可以使用输出缓存来解决此问题):

语法

数 描述 string 必需。规定要发送的报头字符串。 replace

可选。指示该报头是否替换之前的报头,或添加第二个报头。

默认是 true(替换)。false(允许相同类型的多个报头)。

http_response_code 可选。把 HTTP 响应代码强制为指定的值。(PHP 4 以及更高版本可用)

php文件下载可以使用http的请求头加上php的IO可以实现,很久之前写过这么一个功能,后来代码没了,今天记录一下

1、先看一下一个正常的http请求

2、一些常见的header功能

PHP使用header方式实现文件下载功能(php header refresh)

3、看下下载所要用的的请求头

content-type:文件类型 Accept-Ranges:表示接收数据的类型或者范围,图片属于二进制的东西所以需要使用字节的方式传输 Accept-Length:表示接收的文件大小,php文件下载需要告诉浏览器下载的文件有多大 Content-Disposition:附件只需要把文件名给过去就可以,这个名称就是下载时显示的文件名称

4、php的文件操作出现的比较早,文件名是中文的时候需要注意转码

5、php的文件下载机制是首先nginx把文件信息读入服务器内存,然后使用请求头把文件二进制信息通过浏览器传给客户端

feof用来判断文件是否已经读到了末尾,fread用来把文件读入缓冲区,缓冲区的大小是,一边读取一边把数据输出到浏览器。为了下载的安全性每次读数据都进行字节的计数。文件读取完毕后关闭输入流

注意:

a、如果运行的过程中出现问题,可以清空(擦掉)输出缓冲区,使用下面的代码即可

ob_clean();

b、很多人喜欢用readfile,如果是大文件,可能会有问题

完整代码

PS:下面看一段实例代码php如何通过header文件头实现文件下载

具体代码如下所示:

总结

以上所述是小编给大家介绍的PHP使用header方式实现文件下载功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

thinkPHP5 ajax提交表单操作实例分析 本文实例讲述了thinkPHP5ajax提交表单操作。分享给大家供大家参考,具体如下:!DOCTYPEhtmlhtmlheadmetacharset="UTF-8"title/titlescriptsrc="//cdn.bootcss.com/jquery/3.1.1/jquer

ThinkPHP5联合(关联)查询、多条件查询与聚合查询实例详解 本文实例讲述了ThinkPHP5联合(关联)查询、多条件查询与聚合查询。分享给大家供大家参考,具体如下:一、联合(关联)查询1.项目表DROPTABLEIFEXISTS`darling_pro

ThinkPHP5查询数据及处理结果的方法小结 本文实例讲述了ThinkPHP5查询数据及处理结果的方法。分享给大家供大家参考,具体如下:在处理数据库查询结果时遇到了些问题,记录下用到过的几种

标签: php header refresh

本文链接地址:https://www.jiuchutong.com/biancheng/274987.html 转载请保留说明!

上一篇:PHP调用OpenOffice实现word转PDF的方法(PHP调用API)

下一篇:thinkPHP5 ajax提交表单操作实例分析(thinkphp表单提交)

  • 个人所得税手续费返还时间
  • 工会经费计税依据
  • 生产成本里面的直接人工
  • 原材料预付款如何做账
  • 已付款已收货但发票未到账务处理怎么做
  • 计提的费用年底要冲回吗
  • 公司年底奖金怎么算
  • 销项进项怎么转化
  • 以旧换新会计处理金银首饰
  • 没有认证方式
  • 税务局查账征收转为核定征收之程序
  • 新领的发票怎么读入开票系统
  • 增值税发票专票有效期
  • 发票停票会自动恢复吗
  • 发票丢失联次
  • 非上市公司股权转让
  • 税务机构
  • 总分机构异地移送
  • 暂估金额与发票金额的区别
  • 非同一控制下合并报表编制
  • 生产车间制造费用包括
  • 2023年王者荣耀世界杯
  • 文件夹怎么发送不了
  • 哪些收入要纳税
  • 代扣个人缴纳社保费
  • 收到对方公司开出发票如何做账
  • 工业厂房修建需要哪些手续
  • 损失赔偿金要开什么发票
  • 支付手续费方式委托代销商品确认收入
  • laravel执行seed命令
  • html制作动画代码
  • 增值税业务发生的时间
  • viwer.js
  • php考试时间倒计时
  • 记账凭证后面附发票吗
  • 买汽车配件属于什么服务
  • 固定资产多少钱以上计入固定资产
  • springboot怎么配置拦截器
  • 营改增后自建厂房抵扣
  • mysql数据库基本操作
  • 前端架构优化
  • 缴纳的税费怎么计算
  • 个人所得税的不同税率
  • 建筑公司算不算企业
  • 企业贴现会计分录
  • 零申报是怎么回事
  • 个人无需办理汇票业务
  • 职工薪酬实际发生额忘记填会有风险吗
  • 工程项目需要交5000万保证金合理吗
  • 园林绿化行业的市场需求是什么
  • 个人如何缴纳公积金和社保费用
  • 出口收入没有及时申报怎么处罚
  • 进项认证怎么算
  • 增值税一般纳税人认定标准
  • 去年所得税汇算清缴报表填错了今年可以改吗
  • 差额征税发票可以税前扣除吗
  • 事业单位公务卡额度多少
  • 政府补贴是否交增值税
  • 租办公楼有什么讲究
  • 新基建政策文件
  • 一年不到
  • 营业收入是利润总额吗
  • mysql常见故障和解决方法
  • 阿里云 centos7 替换
  • Windows Sever 2016技术预览版3 本月发布
  • Win10预览版镜像
  • linux退出telnet服务
  • win10如何打开defender
  • shell脚本指南
  • android基础入门教程
  • android内存占用分析
  • delphi7教程
  • python中的类怎样理解
  • 广东省电子居住证怎么查看
  • 海关编码更新
  • 重庆电子税务局app下载
  • 工厂的税率是多少
  • 医院黄票可以报销吗
  • 外贸高新技术企业认定
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设