当前位置:首页 > PHP教程 > php上传下载 > 列表

php文件下载的应用实例

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-17 21:10:59 浏览: 评论:0 

本文章为你提供这款php文件下载代码是一款利用header把文件代码发送到客户端的浏览器进行下载,php实例代码如下:

  1. <?php 
  2. function download($file_dir,$file_name
  3. //参数说明: 
  4. //file_dir:文件所在目录 
  5. //file_name:文件名,开源代码phpfensi.com 
  6.     $file_dir = chop($file_dir);//去掉路径中多余的空格 
  7.     //得出要下载的文件的路径 
  8.     if($file_dir != ''
  9.     { 
  10.         $file_path = $file_dir
  11.         if(substr($file_dir,strlen($file_dir)-1,strlen($file_dir)) != '/'
  12.             $file_path .= '/'
  13.         $file_path .= $file_name
  14.     }             
  15.     else 
  16.         $file_path = $file_name;     
  17.      
  18.     //判断要下载的文件是否存在www.111cn.net 
  19.     if(!file_exists($file_path)) 
  20.     { 
  21.         echo '对不起,你要下载的文件不存在。'
  22.         return false; 
  23.     } 
  24.     $file_size = filesize($file_path); 
  25.   
  26.     header("Content-type: application/octet-stream"); 
  27.     header("Accept-Ranges: bytes");//111cn.net 
  28.     header("Accept-Length: $file_size"); 
  29.     header("Content-Disposition: attachment; filename=".$file_name); 
  30.      
  31.     $fp = fopen($file_path,"r"); 
  32.     $buffer_size = 1024; 
  33.     $cur_pos = 0; 
  34.      
  35.     while(!feof($fp)&&$file_size-$cur_pos>$buffer_size
  36.     { 
  37.         $buffer = fread($fp,$buffer_size); 
  38.         echo $buffer
  39.         $cur_pos += $buffer_size
  40.     } 
  41.      
  42.     $buffer = fread($fp,$file_size-$cur_pos); 
  43.     echo $buffer
  44.     fclose($fp); 
  45.     return true; 
  46. ?> 

Tags: php文件下载 应用实例

分享到: