通过PHP将文件以流的方式发送客户端
来源:互联网 发布:编写软件怎么自学 编辑:程序博客网 时间:2024/06/06 15:48
以前在ASP下,通过BASP21实现类似功能。现在将PHP版本整理在这里。
通过以下代码中所使用的技术可以实现如下几个可能的需求
1、在有模板的基础上,针对客户的定制下载。
2、一些浏览器本身能够表示的文件类型(如txt文件),可以通过将头信息Content-Type改为 header("Content-Type: application/force-download");进行强制下载。
3、对于一些动态生成文件,比如TXT/CSV等文件,将临时文件及时删除
<?php/** * 本程序实现了将测试文件[test.pdf]创建副本,并将副本读入 * 内存,以流的方式发送给客户端浏览器,最终删除副本的操作。 * * 本文可以实现的需求: * 1、在有模板的基础上,针对客户的定制下载。 * 2、一些浏览器本身能够表示的文件类型(如txt文件),可以通过将头信息Content-Type * 改为 header("Content-Type: application/force-download");进行强制下载。 * 3、对于一些动态生成文件,比如TXT/CSV等文件,可以将临时文件及时删除 * @author Densin.Tian@CisternData 2015/05/05 */// 文件名扩展名$fileExName = ".pdf";// 原始文件文件名$oldFileMainName = "testfile";// 获得时间戳 YYYYMMDDHHMISS$timestamp = date ( "YmdHis", time () );// 新文件名$newFileName = $oldFileMainName . $timestamp;// 复制文件if (! copy ( $oldFileMainName . $fileExName, $newFileName . $fileExName )) {die ( "failed to copy" );}// 设置下载头信息header ( "Content-Type: application/pdf" );header ( "Content-Disposition: attachment; filename=20150505.pdf" );// 文件流输出到浏览器readfile ( $newFileName . $fileExName );// 删除文件@unlink ( $newFileFullName );?>
0 0
- 通过PHP将文件以流的方式发送客户端
- php通过socket编程,以SMTP将邮件发送到指定的QQ邮箱里面。
- 以Gzip的形式通过服务器向客户端发送数据
- 将DataSet以XML的形式发送给客户端
- PB9.0 通过http协议以POST方式将XML发送到协议服务器
- 通过向服务器端发送get请求来让服务器端将其上的文件下载到客户端
- php通过socket,以SMTP发送邮件
- 在文字模式下用mail如何将文件以附件方式发送
- 如何将存在服务器上的word文件在客户端浏览的时候以html页的形式发送给用户?
- 以ajax方式向后台发送文件
- 将图片文件以流的方式写入到jsp页面
- 将图片文件以流的方式写入到jsp页面
- 将整型以二进制方式写入文件
- Delphi 用文件流的方式将客户端数据集写到EXCEL中去
- 将集合以数据流方式发送给servlet
- TCP客户端和服务端的通信,通过服务端将客户端的小写字母转化成大写发送回来
- FastDFS的配置、部署与API使用解读(3)以流的方式上传文件的客户端代码
- 转载:FastDFS的配置、部署与API使用解读(3)以流的方式上传文件的客户端代码
- hiho 博弈——01(hiho 44周)
- Beginners Level Course:Day to Day with Linux
- 装饰者模式
- Beginners Level Course:File Permisions - chown
- poj3468 A Simple Problem with Integers
- 通过PHP将文件以流的方式发送客户端
- PHP基础知识总结系列文章归档
- find命令用法介绍
- OO设计思想
- 《PHP基础知识总结》关于PHP5 Session生命周期介绍
- Spring学习笔记(12)----------aop
- angularjs karma安装小问题
- 04_java基础_继承、抽象、多态
- CentOS下安装samba服务