日期:2013-06-11  浏览次数:20513 次

分两种情况,一是文件单独下载:  
  <?  
  $file_name   =   "abc.exe";  
  $file_dir   =   "/xxx/";  
  if   (!file_exists($file_dir   .   $file_name))   {   //检查文件是否存在  
  echo   "文件找不到";  
  exit;  
  }   else   {  
  $file   =   fopen($file_dir   .   $file_name,"r");   //   打开文件  
  //   输入文件标签  
  Header("Content-type:   application/octet-stream");  
  Header("Accept-Ranges:   bytes");  
  Header("Accept-Length:   ".filesize($file_dir   .   $file_name));  
  Header("Content-Disposition:   attachment;   filename="   .   $file_name);  
  //   输出文件内容  
  echo   fread($file,filesize($file_dir   .   $file_name));  
  fclose($file);  
  exit;}  
  ?>  
   
  另外一种情况是文件路径包含“http”或者“ftp”网址:  
  <?  
  $file_name   =   "abc.exe";  
  $file_dir   =   "http://www.xrss.cn/";  
  $file   =   @   fopen($file_dir   .   $file_name,"r");  
  if   (!$file)   {  
  echo   "文件找不到";  
  }   else   {  
  Header("Content-type:   application/octet-stream");  
  Header("Content-Disposition:   attachment;   filename="   .   $file_name);  
  while   (!feof   ($file))   {  
  echo   fread($file,50000);  
  }  
  fclose   ($file);  
  }  
  ?>