PHP学习笔记【21】--PHP实现文件下载
2013-04-01 16:13
435 查看
<?php
function down_file($dir,$file_name){
$dir = $_SERVER["DOCUMENT_ROOT"].$dir.$file_name;
if(!file_exists($dir)){
echo "文件不存在";
return ;
}
//打开文件
$fp = fopen($dir, "r");
//获取文件大小 单位是字节
$file_size=filesize($file_name);
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: $file_size");
header("Content-Disposition: attachment; filename=".$file_name);
//返回文件
// header("Content-Type : application/octet-stream");
// //按照字节大小返回
// header("Accept-Ranges:bytes");
// //返回文件大小
// header("Accept-Length:".$file_size);
//
// //这里客户端的弹出对话框,对应的文件名
// header("Content-Disposition:attachment;filename=".$file_name);
//向客户端回送数据
$buffer=1024;
//为了下载的安全,我们最好组一个文件字节读取计数器
$file_count=0;
while(!feof($fp)&&$file_size>$file_count){
$file_data = fread($fp, 1024);
$file_count+=$buffer;
echo $file_data;
}
fclose($fp);
}
down_file("/k/", "publish.jpg");
?>
本文出自 “Kenan_ITBlog” 博客,请务必保留此出处http://soukenan.blog.51cto.com/5130995/1072862
function down_file($dir,$file_name){
$dir = $_SERVER["DOCUMENT_ROOT"].$dir.$file_name;
if(!file_exists($dir)){
echo "文件不存在";
return ;
}
//打开文件
$fp = fopen($dir, "r");
//获取文件大小 单位是字节
$file_size=filesize($file_name);
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: $file_size");
header("Content-Disposition: attachment; filename=".$file_name);
//返回文件
// header("Content-Type : application/octet-stream");
// //按照字节大小返回
// header("Accept-Ranges:bytes");
// //返回文件大小
// header("Accept-Length:".$file_size);
//
// //这里客户端的弹出对话框,对应的文件名
// header("Content-Disposition:attachment;filename=".$file_name);
//向客户端回送数据
$buffer=1024;
//为了下载的安全,我们最好组一个文件字节读取计数器
$file_count=0;
while(!feof($fp)&&$file_size>$file_count){
$file_data = fread($fp, 1024);
$file_count+=$buffer;
echo $file_data;
}
fclose($fp);
}
down_file("/k/", "publish.jpg");
?>
本文出自 “Kenan_ITBlog” 博客,请务必保留此出处http://soukenan.blog.51cto.com/5130995/1072862
相关文章推荐
- PHP学习笔记【21】--PHP实现文件下载
- 文件上传与下载学习笔记(3)---面向对象方法实现文件上传
- iOS学习笔记-122.多线程21——多图下载1_第一种实现方式(不靠谱)
- 文件上传与下载学习笔记(3)---面向对象方法实现文件上传
- 安装、进程-云计算学习笔记---hadoop的简介,以及安装,用命令实现对hdfs系统进行文件的上传下载-by小雨
- php学习笔记 2 文件下载
- 学习笔记2——远程连接linux服务器时SecureCRT的相关配置(包括实现对文件的上传、下载)
- 黑马程序员_学习笔记22_HttpHanlder实现文件下载
- Struts学习笔记: 实现文件上传下载
- OA (ssh) 基本实现(poi 生成 Excel , struts2动态下载 mysql数据库文件) 学习笔记(含源代码)
- 云计算学习笔记004---hadoop的简介,以及安装,用命令实现对hdfs系统进行文件的上传下载
- php学习笔记:利用递归实现删除文件目录
- 【小白笔记】PHP学习之路 (26) --文件上传与下载、配置
- 文件上传与下载学习笔记(3)---面向对象方法实现文件上传
- php学习笔记(十)文件的上传与下载
- Struts学习之 实现文件上传、下载操作
- php如何实现文件下载
- php 学习笔记 -- 文件(五)
- 文件上传与下载学习笔记(1)---文件上传原理及配置
- Struts2学习笔记15:Struts2的文件上传和下载【续】二