php文件下载类代码,php文件下载处理类
Freigeben: 2016-07-25 08:51:27
Original
1178 Leute haben es durchsucht
-
-
/*
- * 功 能: 文件下载
- */
- /**
- * 使用方法:$download = new Download();
- * //设置参数
- * $download->set_file_dir("c:/");
- * $download->set_file_name("boot.ini");
- * $download->set_read_bytes(1024);
- * //文件下载处理操作
- * $download->deal_with();
- * //判断文件是否存在
- * if($download->is_file_exist()){
- *echo "file_exist";
- *}else{
- *echo "file_not_exist";
- *}
- */
- class Download {
- private $file = null;//文件句柄
- private $file_dir = "";//文件所在的目录
- private $file_name = "";//文件名称
- private $file_exist = false;//表示文件是否存在, 缺省为不存在
- private $read_bytes = 0;//文件读取字节数
- private $mode = "r";//文件的访问类型
public function __construct(){
- }
public function __destruct(){
- if(null != $this->file){
- fclose($this->file);
- }
- }
/**
- * 文件下载处理的操作
- */ bbs.it-home.org
- public function deal_with(){
- //文件全路径
- $file_path = $this->file_dir . $this->file_name;
//检查文件是否存在
- if (file_exists($file_path)) {
- $this->file_exist = true;
// 打开文件
- $this->file = fopen($file_path, $this->mode);
// 输入文件标签
- Header("Content-type: application/octet-stream");
- Header("Accept-Ranges: bytes");
- Header("Accept-Length: " . filesize($file_path));
- Header("Content-Disposition: attachment; filename=" . $this->file_name);
// 输出文件内容
- while(!feof($this->file))
- {
- $out = fread($this->file, $this->read_bytes);
- if(!get_magic_quotes_gpc())
- {
- echo $out;
- }
- else
- {
- echo stripslashes($out);
- }
- }
- //echo fread($file, filesize($file_dir . $file_name));
- }
- }
/**
- * 返回值为 true 或 false, 通过其值判断文件是否存在
- */
- public function is_file_exist(){
- return $this->file_exist;
- }
/**
- * 参数类型为字符串
- */
- public function set_file_dir($file_dir=""){
- $this->file_dir = $file_dir;
- }
/**
- * 参数类型为字符串
- */
- public function set_file_name($file_name=""){
- $this->file_name = $file_name;
- }
/**
- * 参数类型为整型
- */
- public function set_read_bytes($read_bytes=1024){
- $this->read_bytes = $read_bytes;
- }
- }
- ?>
-
复制代码
|
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31