当前位置:首页 > PHP实例教程:PHP实现文件安全下载的程序

PHP实例教程:PHP实现文件安全下载的程序

点击次数:1228  更新日期:2011-01-03
\n

  PHP实现文件安全下载


\n

  程序如下:


\n

\n

  $file_name = “info_check.exe”;


\n

  $file_dir = “/public/www/download/”;


\n

  if (!file_exists($file_dir . $file_name)) { //检查文件是否存在


\n

  echo “文件找不到”;


\n

  exit;


\n

  } else {


\n

  $file = fopen($file_dir . $file_name,”r”); //打开文件


\n

  //输入文件标签


\n

  Header(“Content-type: application/octet-stream”);


\n

  Header(“Accept-Ranges: bytes”);


\n

  Header(“Accept-Length: “.filesize($file_dir . $file_name));


\n

  Header(“Content-Disposition: attachment; filename=” . $file_name);


\n

  //输出文件内容


\n

  echo fread($file,filesize($file_dir . $file_name));


\n

  fclose($file);


\n

  exit;}


\n

  而如果文件路径是”http”或者”ftp”网址的话,则源代码会有少许改变,程序如下:


\n

  $file_name = “info_check.exe”;


\n

  $file_dir = “www.dwww.cn/“;


\n

  $file = @ fopen($file_dir . $file_name,”r”);


\n

  if (!$file) {


\n

  echo “文件找不到”;


\n

  } else {


\n

  Header(“Content-type: application/octet-stream”);


\n

  Header(“Content-Disposition: attachment; filename=” . $file_name);


\n

  while (!feof ($file)) {


\n

  echo fread($file,50000);


\n

  }


\n

  fclose ($file);


\n

  }

\n